2012-12-07 48 views
4

所以,在我的样式表中,我有一个规则中的属性与myElement匹配,它使用!important标志。如何通过DOM设置!important标志的CSS属性?

然后,在脚本中,我需要调整myElement的属性。我正在使用的代码什么也不做:

var myElement = document.getElementById('myElement'); 
myElement.style.property = 'newValue'; 

这扔我一个循环,因为虽然什么也没有明显我的网页上发生的事情,该元件即使在Chrome的元素督察element.style新的属性值显示。所以我花了一段时间才弄清楚,但是后来我发现我还必须将!important标志置于newValue设置中。 有没有人知道如何以编程方式做到这一点?

+1

这样展开了'important'战争......真正的解决办法是不使用它! –

+3

这个问题很好的描述了为什么在你的代码的任何地方使用'!important'通常是一个糟糕的主意。 – SDC

回答

12

在这里你去:

myElement.style.setProperty('property', 'newValue', 'important'); 

现场演示:http://jsfiddle.net/mJHEf/

+1

+1。但是,也应该注意,对于IE,它需要IE9或者'setProperty()'方法才能按预期工作。 – inhan

相关问题