无法覆盖内联样式!重要财产?

时间:2013-06-04 17:43:14

标签: html css override

我有一个div,定义如下:

<div style="background-color: rgb(217, 240, 211) ! important; color: rgb(0, 102, 2) ! important;" class="div_box">... ...
</div>

因为div当前正在使用内联样式(我讨厌这个!)我需要覆盖背景颜色和颜色。

我试过了:

.div_box[style] {
background-color: rgb(216, 219, 215) ! important; 
color: rgb(94, 94, 94) ! important;
}

但不起作用。还试过.div_box {...}但仍然没有工作。

所以我的问题是,如何在不手动更改内联样式的情况下覆盖上述div样式?

2 个答案:

答案 0 :(得分:4)

http://jsfiddle.net/UkpnZ/3/

由于你无法删除内联样式(如我所略过)(如果你可以使用Jquery),你可以使用它:

$('.div_box').css('background-color', '');
$('.div_box').css('color', '');

从内联样式中去除背景颜色和颜色属性,其中出现.div框。这里唯一增加的问题是它将在调用类的任何地方剥离它。

使用此方法,您的样式表中不再需要!important

答案 1 :(得分:3)

内联CSS覆盖CSS样式表。它们都被标记为!important,在你的情况下你不能使用这个css技巧来改变div颜色。

简短的回答,你不能做你想做的事。只有内联CSS不会被标记为!important。