我有一个简单的CSS:
.cont div {
margin:10px;
border:1px solid;
}
.mark { /* This get ignored? */
margin:30px;
}使用此标记:
<div class="cont">
<div>a</div>
<div class="mark">b</div>
</div>我希望div.mark有margin:30px;,但至少在Chrome中不是这样的,因为通用规则.cont div似乎有更高的优先级。
考虑到我不想使用!important,有没有其他方法可以解决这个问题?
http://jsfiddle.net/xNVRm/
发布于 2013-01-16 04:51:37
".cont div“声明覆盖了".mark”声明,因为它实际上更具体。CSS使用一种积分系统来确定哪些规则适用。在本例中,".cont div“指定一个类和其中的一个元素,而".mark”只指定一个类。
有关所有符合要求的浏览器应该使用的确切规则,请参阅此链接:http://www.w3.org/TR/CSS21/cascade.html#specificity
在您的示例中,您可以通过在第二个声明中使用".cont .mark“来修复此问题。
https://stackoverflow.com/questions/14346538
复制相似问题