声明冲突的优先顺序
声明冲突的优先顺序,这个虽然很基本,但是也是很重要的东西,往往很多时候出现写了的样式没有效果,十有八九就是声明中的权重问题!我拉通去整理了一下。
一、比较声明的优先级:
由大到小顺序。
1. 用户重要声明。2.作者重要声明。3.作者普通声明。4.用户普通声明。5.浏览器默认声明。
二、比较特殊性:
规则范围越大,特殊性越低,规则范围越小特殊性越高。
行内样式>ID选择器>类/伪类/属性选择器>元素选择器>通配符
这里有个权重问题:
!important 权重最高
行内样式 1000
ID选择器 100
类/伪类/属性 10
元素/伪元素 1
通配符 0
三、源次序
通俗一点最后写的样式会覆盖之前同个标签的样式。
通过这三个比较后就会找出样式不生效的原因。