【发布时间】:2013-01-14 15:20:41
【问题描述】:
哪些类选择器规则对 10 分的特异性更高?
.A.E.F .C .D
或
.A .B .C span
HTML:
<div class="A E F">
<div class="B">
<div class="C">
<div class="D">
<span>17590</span>
<span>Points</span>
</div>
</div>
</div>
</div>
CSS:
.A.E.F .C .D /* span */ {
font-size: 1em;
}
.A .B .C span {
font-size: .95em;
}
这是一个演示问题的 JS 小提琴:http://jsfiddle.net/UgkZY/
我原以为第一条规则会赢。 5 x 类而不是 3 x 类 + 1 x 类型。但是,第二条规则胜出,因为 .A.E.F 似乎只得分为 1 级。
如果我使用下面的在线 CSS 特异性计算器http://specificity.keegan.st/,它认为第一条规则会胜出。实际上,在 Chrome 浏览器中,第二个获胜。
有人可以澄清一下 .A.B.C 在 CSS 特异性方面确实被认为只是一类吗?
顺便说一句,如果我在第一条规则中添加一个跨度选择器,它将胜出。
根据 CSS 规范,我认为第一个应该获胜。
http://www.w3.org/TR/selectors/#specificity
LI.red.level /* a=0 b=2 c=1 -> 特异性 = 21 */
我必须说非常令人困惑。
【问题讨论】:
标签: css css-selectors css-specificity