关于CSS选择器优先级的规则说明
CSS选择器的优先级是由几个不同的标准决定的,这些标准被称为选择器的权重。选择器的权重是通过组合它们的规则来决定的,这些规则包括:
- 内联样式(如:style属性直接在HTML元素上设置的样式):1,0,0,0
- ID选择器(如:#example):0,1,0,0
- 类选择器、属性选择器、伪类:0,0,1,0
- 元素选择器、伪元素:0,0,0,1
- 通配选择器(*):0,0,0,0
- 继承的样式:没有权重,会被其他选择器覆盖
权重是通过将这些数字按照一定的规则相加来计算的,但是有一个例外,即当权重相同时,最后定义的规则将会被应用。
例如,考虑以下两个选择器:
div#app b {
color: red;
}
div b {
color: blue;
}
第一个选择器的权重是:0,1,0,1,第二个选择器的权重是:0,0,0,1。由于第一个选择器的权重更高,那么在应用样式时,元素将会是红色。
如果你想要提高特定规则的优先级,可以使用!important
,例如:
div#app b {
color: red !important;
}
使用!important
可以提高规则的权重,使其超过其他所有没有使用!important
的规则。但请注意,滥用!important
可能会导致样式难以维护,所以应该谨慎使用。
评论已关闭