首先,我们要了解什么是样式冲突。
样式冲突是通过不同的选择器选中同一个元素,进行一样的设定发生的冲突。
那么,此时选择器的权重会决定具体运用哪种选择器。
- 内联样式 1000
- id选择器 0100
- 类选择器/伪类选择器/属性选择器 0010
- 元素选择器 0001
- 通配选择器/子选择器/兄弟关系相邻选择器 0000
- 继承样式
以上选择器从上到下优先级依次从大到小,为了方便我们记忆,同一等级的选择器我们赋予了由0和1组成的4位数,方便后面进行计算。其中继承样式在其他任何选择器中没有任何优先级。
注:!important拥有最高优先级,也就是任何选择器赋予了它,会先体现样式。但一般我们很少用,因为在日常的网页中后期更改样式很麻烦。我们一般用来检测出现问题是是否是选择器权重问题。
注意:1.比较优先级时,需要将所有选择器优先级进行相加计算(为了方便,可以用上面的四位数字),最后优先级越高,则优先显示
2.并集选择器是单独计算的,不可以相加
3.如果优先级计算结果相同,则优先写在后面的样式
4.选择器的累加不会超过上一级选择器