PageKit — 可自托管的 GrapesJS 建站工具,附完整源码。 获取抢先体验

问题 #6039✓ 已解决提出于 2024年8月6日作者 Gryphonn3 个反应

无法设置块显示值

快速解答作者 artf❤ 2

是的,问题就在这里: https://github.com/GrapesJS/grapesjs/blob/1e3766f0060e6da502fccf9ba9eb938d5ac860bb/src/style_manager/model/PropertyFactory.ts#L267 添加一个新选项,比如“初始”,并设为默认选项,这样做合理吗?

阅读下方完整回答 ↓

问题

GrapesJS 版本

  • 我确认使用最新版本 GrapesJS

你用的是什么浏览器?

铬126

可复制演示链接

https://jsfiddle.net/Gryphonn/ob1pznh6/

描述一下那个虫子

如何复现这个漏洞?

  1. 选择任意单词。
  2. 包装得有型。
  3. 保持该词被选中。
  4. 进入通用->显示
  5. 我想要屏蔽。我点击屏蔽,但没有任何反应。

预期的行为是什么? 显示值必须是空的,这样我才能立即选择所需的内容。 或者它必须显示所选文本当前的实际显示值。这里是内联显示,而不是块。

目前的行为是什么? 目前我需要点击两次。 首先,点击除“屏蔽”以外的任何内容。显示字段已激活。 那我应该点击屏蔽。

如果需要执行某些代码以重现该漏洞,请将其粘贴到下面:

// your code here

行为准则

  • 我同意遵守本项目的行为准则

回答(4)

danstarns• 2024年8月8日

你好@Gryphonn, 我试图复现你的问题,但步骤不太清楚,请重新表述。

bandicam.2024-08-08.21-07-14-667.mp4

感谢您的详细报告 🙏

看起来我们应该更好地处理默认显示,这样你就不用先切换到另一个显示器再切换回来。

danstarns• 2024年8月8日

你好,@Gryphonn,

我试着重现你的问题,但步骤不太清楚,请重新表述。

GJS Helper• 2026年5月17日

你已经准确识别出 GrapesJS 样式管理器中关于 display 属性的一个漏洞,特别是在处理带有隐式 display: inline 值的元素时,比如由“样式包覆”功能创建的 <span> 。这个问题阻止了首次尝试时直接应用 display: block 。 根本原因 问题的核心在于 GrapesJS 风格管理器中针对 display 属性的UI组件如何初始化并检测变更。当你选择像 <span> 这样的组件(自然带有 display: inline)时,样式管理器对 display 属性的UI并未正确反映 inline 状态。相反,它通常显示为未被选中或默认状态。 由于UI组件的内部状...

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。