选择器的优先级
当我们通过不同的选择器选中相同的元素,并且为相同的样式设置不同的值时,此时就发生了样式的冲突。
- 发生样式冲突时,应用哪个样式由
选择器的权重(优先级)
决定:
内联样式 1 0 0 0
id选择器 0 1 0 0
类和伪类选择器 0 0 1 0
元素选择器 0 0 0 1
统配选择器 0 0 0 0
继承的样式 没有优先级
- 注意:
- 比较优先级时,需要将所有选择器的优先级进行相加计算最后数值越大,则越优先显示(分组选择器要单独计算)
- 选择器的累加不会超过其最大数量级,类选择器再多也不会超过id选择器
- 如果优先级计算后相同,此时优先使用考下的样式(程序自顶而下运行)
- 可以在某一个样式后边加上
!important
,则此时的样式获得最高优先级,甚至超过内联样式(开发中中慎用)
总的来说,选择器条件越苛刻优先级越高
<style>
div#one{
background-color:red;
}
#one{
background-color:orange;
}
.two{
background-color:green;
}
</style>
<body>
<div id="one" class="two">Surymy</div>
<div id="one" class="two" style="background-color:purple">Surymy</div>
</body>