不必要的画布风格
它的目的是存储画布样式,那些不会影响 hmtl/css 结果的样式,不会导出的样式,对吧? 正确默认的机身是白色背景,这似乎是所有浏览器的默认颜色,对吧? 是的,但“iframe”主体没有默认背景色,所以才有那个样式,所以你需要根据你的使用情境找到合适的。
阅读下方完整回答 ↓问题
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Arc 版本 1.35.0 / Chromium 引擎 123.0可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 我的特殊情况: 就我而言,插件和通用样式的所有样式都集中在头部。所以,为了在编辑器中实现类似的表现,我会把这些样式添加到Canvas头部。当我在通用样式中指定背景色时,它会被GJS画布样式覆盖。这迫使我明确规定“重要”规则,而我不想这么做。  我猜即使没有内置机制来管理Canvas头的内容,这种情况也不算罕见。 如何复现这个漏洞?前往 https://grapesjs.com/demo.html在控制台(DevTools)中运行以下代码 “JS const style = document.createElement('style'); style.innerHTML = 'body { 背景色:黑色; }'; 编辑。Canvas.getDocument().head.insertAdjacentElement('b...
回答(4)
它的目的是存储画布样式,那些不会影响 hmtl/css 结果的样式,不会导出的样式,对吧?
正确
默认的机身是白色背景,这似乎是所有浏览器的默认颜色,对吧?
是的,但“iframe”主体没有默认背景色,所以才有那个样式,所以你需要根据你的使用情境找到合适的。
有 [canvasCss](https://github.com/GrapesJS/grapesjs/blob/99bc79c1e45da1a2db62aace97b62206eb103bc2/src/editor/config/config.ts#L154) 选项。
下次请开个讨论区,这不是核心漏洞,而是用法错误。
嘿,@artf。谢谢你的回答。我不确定我们是否完全理解对方,我想澄清一个细节。 是的,我知道canvasCss属性,而且我用它来更改所选组件的样式。我理解这个属性的本质:它旨在存储画布样式,那些不会影响 hmtl/css 结果的样式,不会导出的样式,对吧? 那为什么默认画布样式有这个 CSS 规则 '''body { background-color: white; }``` ?为什么我们有理由去覆盖它? 我理解选择了主体元素的情况,在这种情况下,为交互性应用一些样式是合理的。 但为什么要指定“body” {背景色:白色; }“默认情况下,它不会影响编辑器的交互性? 而且默认情况下,机身是白...
谢谢你举报,@ctrhub。 关于非必要的画布风格的好问题。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed')); 组件生命周期 editor.on('component:mount', (c) => console.log('c...
相关问答
通过相似的问题讨论继续研究。
问题 #6663
符号在逐步加载页面时会断裂(实例丢失__symbol链接)
这里有一段展示这个bug的视频: https://github.com/user-attachments/assets/0fdc76ed-cee5-4481-98b1-cbbf52572b31 GrapesJS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览...
问题 #6549
无法调整图片大小
GrapesJS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://codepen.io/Harshsne/pen/YPXdgmj 描述一下那个虫子 如何复现这个漏洞? 上传图片 将其切换为移动视图 调整图像大小 ![图...
问题 #4208
每个元素的样式点击状态错误
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Brave Last 在 Chrome Last 和 Safari Last 上测试过。 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这...
问题 #6152
通过自定义代码添加的CSS在移除自定义代码组件后依然存在
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 任何 可复制演示链接 https://grapesjs.com/demo 描述一下那个虫子 如何复现这个漏洞?添加带有HTML + CSS的自定义代码组件删除自定义代码组件。 预期的行为是什么?...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
GrapesJS DevTools: A Developer Panel Inside Your Editor
If you've ever debugged GrapesJS with console.log(editor.getSelected()) and a dozen throwaway event listeners — this post is for you.
教程
How to Build a Production GrapesJS Editor: The Complete Walkthrough of Brief, Preset, Plugins, and Services
A complete walkthrough of building a production GrapesJS editor: how to choose a preset, pick plugins, and scope setup services without burning a sprint.
教程
Big Updates: TinyMCE 8 and Placeholder 2.0 for GrapesJS
In May we shipped major updates to two of our most popular GrapesJS plugins — TinyMCE Inline Text Editor and Placeholder.
浏览插件分类
直接跳转到市场上的插件分类页面。