总结排序:!important > 行内样式 > ID选择器 > 类选择器 > 标签 > 通配符 > 继承 > 浏览器默认属性
选择器的特殊性值表述为4个部分,用0,0,0,0表示
- !important:使用 !important 声明的样式具有最高的优先级。如果一个样式规则中包含了 !important,则它将覆盖其他所有规则,即使其他规则具有更高特定性或出现在后面。,可以认为它的权重表示1.0.0.0.0。 权值:10000
- 行内样式:在 HTML 元素的 style 属性中定义的样式具有比其他样式规则更高的优先级,权重表示 1.0.0.0。 权值:1000
- ID选择器:权重表示 0.1.0.0。 权值:100
- 类(class)选择器、属性选择器或伪类:权重表示 0.0.1.0。 权值:10
- 元素和伪元素:权重表示 :0.0.0.1 。权值:1
- 通配选择器*:子选择器,相邻同胞选择器对特殊性没有贡献, 权重表示 :0.0.0.0。 权值:0
比较规则就是三点
- 先从高等级进行比较,高等级相同时,再比较低等级的,以此类推;
- 完全相同的话,就采用 后者优先原则(也就是样式覆盖);
- css属性后面加 !important 时,无条件绝对优先(比内联样式还要优先);