【发布时间】:2015-07-07 19:26:07
【问题描述】:
如何通过 JavaScript 去除 CSS 规则?
var elStyle = document.querySelector('style#the-style');
var stylesheet = elStyle.sheet;
var rules = stylesheet.cssRules;
for (var i=0; i<rules.length; i++) {
var rule = rules[i];
if (rule.selectorText === '#rule2 em') {
// TODO: remove this rule
break;
}
}
我成功删除了rule.style.color='' 的样式,但规则仍然存在。是否有要删除的 API?还是应该使用innerHTML?
更新
在这种情况下,我想删除样式规则,而不是 style properties。
(我不太了解 Stack Overflow 的规则,希望这次编辑是对的。)
【问题讨论】:
-
我建议将您的 CSS 规则更改为类,并在您想要更改其属性时简单地替换该类。这样您就不会弄乱 ID,并且可以控制 CSS 类的输出。
-
@VladBardalez 我添加了一个解释。可以吗?
-
@iamjpg 我正在写一种析构函数。在这种情况下,改变风格不是我的目标。
标签: javascript css