css一,优先级

37 阅读1分钟

为什么关注优先级

· 不同的选择器组合修改同一个元素的同一个属性,谁说了算?

p {
color: yellow
}

#app p {
color: red;
}

.header .user {
color: blue;
}
</style>

优先级顺序大原则

!important > 内联样式 > 选择器设置样式 > 浏览器默认样式 > 来⾃继承的样式

如果优先级完全相同,后⾯的覆盖前⾯的

选择器权重计算

• 千位: 如果声明在 style 的属性(内联样式)则该位得⼀分

• 百位: 选择器中包含ID选择器则该位得⼀分

• ⼗位: 选择器中包含类选择器、属性选择器或者伪类则该位得⼀分

• 个位:选择器中包含标签选择器、伪元素选择器则该位得⼀分

微信截图_20221017212624.png 计算范例1

#detail span { /*101*/
color: red;
}

#detail.box > span.title { /*121*/
color: blue;
}

.box span:hover { /*021*/
color: yellow;
}

#detail span#title { /*201*/
color: pink;
}

</style>

<p id="detail" class="box">

<span class="title" id="title" >饥⼈⾕</span>

</p>