codex-team/editor.js

CSS overriding the style of block tool SVG component

开放

#2,294 创建于 2023年3月3日

 (3 条评论) (0 个反应) (0 位负责人)TypeScript (1,985 个派生)batch import
good first issueimportant

仓库指标

星标
 (26,602 个星标)
PR 合并指标
 (30 天内没有已合并 PR)

描述

There is a css rule in file ui.css, which goes like this...

path { stroke: currentColor; }

Now this rule is fairly innocent but when you have some SVG component as a Block tool, in my case, I am rendering Echarts as a block tool which uses SVG. Then this rules completely overtakes the styles of my svg->path element. Check this image below.

Screenshot 2023-03-03 at 6 04 03 PM

For this SVG, the stroke gets overridden by editor.js style...

Screenshot 2023-03-03 at 6 09 30 PM

This happens because SVGs style precendence works bit differently, Link

The presentation attributes thus will participate in the CSS2 cascade as if they were replaced by corresponding CSS style rules placed at the start of the author style sheet with a specificity of zero. In general, this means that the presentation attributes have lower priority than other CSS style rules specified in author style sheets or ‘style’ attributes.

There is no way to override this behaviour, So I am suggesting if ui.css style could be bit scoped, then this issue could be avoided.

Thanks in advance guys, up and up

贡献者指南