Web 前端开发 让前端飞

计算选择器的权重

2017-05-04  本文已影响0人  打铁大师

下面的代码,文字显示什么颜色?

<style>
#red {
    color: red;
}
.yellow {
    color: yellow;
}
p.yellow {
    color: black;
}
</style>
<p id="red" class="yellow">颜色</p>

文字是红色的,即便黄色,黑色定义在红色之后,但是id定义的样式权重高,因此显示id定义的颜色。

计算选择器的权重规则:

注意:通用选择器(),子选择器(>)和相邻同胞选择器(+)并不在这四个规则中,所以他们的权值都为0。*

权重的计算示例:

选择器 权重
* {} 0
li{} 1
li:first-line{} 2
ul li {} 2
ul ol+li {} 3
h1 + *[rel=up]{} 11
ul ol li.red{} 13
li.red.level {} 21
#red{} 100
style="" 1000

如果权重一样大,后面的样式覆盖前面的样式。否则,显示权重大的样式规则。

上一篇 下一篇

猜你喜欢

热点阅读