如何在 Dart 中为伪元素设置 css 属性

Posted

技术标签:

【中文标题】如何在 Dart 中为伪元素设置 css 属性【英文标题】:How to set css attribute for pseudo element in Dart 【发布时间】:2016-01-01 17:12:28 【问题描述】:

我需要在 Dart 中覆盖一个伪元素的 css 属性。

javascript 中,可以通过例如选择此选项

document.getOverrideStyle(p, ':after').display = 'none';

在 Dart 中我只找到了只读访问,例如

List<CssRule> rules = window.getMatchedCssRules(myElement, ':before');

 CssStyleDeclaration css = myElement.getComputedStyle('::before');

是否有机会覆盖 Dart 中的伪元素 css 属性??

【问题讨论】:

【参考方案1】:

你可以操纵你从那里得到的List&lt;CssRule&gt;

List<CssRule> rules = window.getMatchedCssRules(myElement, ':before');

(rules[0] as CssStyleRule).style.display = 'none';

如果有多个规则,您可能需要搜索规则以更改正确的规则。

在DartPad试试吧

【讨论】:

谢谢-但我得到“没有为类'CssRule'定义吸气剂'样式'”:-见dartpad.dartlang.org/a6e504f829decfe94876 对不起,我只在没有抱怨的调试器中尝试过。我更新了我的答案。 我错过了检查控制台输出。问题是getMatchedCssRules() 在 DartPad 中返回 null。仍在调查中。 另一个缺点是它改变了css规则本身——而不是实例属性:-(

以上是关于如何在 Dart 中为伪元素设置 css 属性的主要内容,如果未能解决你的问题,请参考以下文章

如何在 CSS 中为 SVG 元素添加边框/轮廓/描边?

如何在jQuery中为背景属性设置动画?

如何在sencha中为所有具有指定类名的元素设置样式

在 WebKit 中为 CSS 剪辑属性设置动画的问题

如何在颤动中为整个应用程序设置文本颜色主题

元素和选择器 伪类 选择器的优先级