本文共 575 字,大约阅读时间需要 1 分钟。
CSS选择器的优先级是:内联样式 > ID选择器 > 类选择器 > 标签选择器
到具体的计算层⾯,优先级是由A、B、C、D的值来决定的,其中它们的值计算规则如下:
(有些并不是选择器,但为了更好地说明问题,暂且将其列入)
选择器 | 权重计算公式 {A,B,C,D} |
---|---|
继承 或 *{} | {0,0,0,0} |
每一个标签选择器 或 每一个伪元素选择器 | {0,0,0,1} |
每一个类选择器 或 每一个属性选择器 或 每一个伪类选择器 | {0,0,1,0} |
每一个ID选择器 | {0,1,0,0} |
存在内联样式 | {1,0,0,0} |
出现!important | ∞无穷大 |
注意:
若出现多个ID选择器,则计算公式会叠加。其他选择器计算方式相同。例如:
选择器 | 权重计算公式 {A,B,C,D} |
---|---|
3个ID选择器 | {0,3,0,0} |
举例:
选择器 | 权重计算公式 {A,B,C,D} | 序号 |
---|---|---|
div ul li | {0,0,0,3} | ① |
.nav ul li | {0,0,1,2} | ② |
a:hover | {0,0,1,1} | ③ |
#box .nav a | {0,1,1,1} | ④ |
⽐较优先级的⽅式是从A到D去⽐较值的⼤⼩。A、B、C、D权重从左到右,依次减⼩。
判断优先级时,从左到右,⼀⼀⽐较,直到⽐较出最⼤值,即可停⽌。对于以上举例,优先级的大小顺序为:④ > ② > ③ > ①
转载地址:http://ldsu.baihongyu.com/