令人烦恼的css选择器权值问题

前言:

刚刚接触前端,觉得前端技术是一个非常有趣的东西,但有的时候在浏览器显示的效果往往不是自己想象的那样,调试很久都找不到问题。这时候就要看看是不是选择器的权值问题了,因为css具有自己的优先级计算方法。

 

示例:

结果:

 

 

 

 

由此可见, 不同的选择器的优先级是不一样的!

 

 

选择器的权值与权级

通配选择器 -- 权值0 -- 权级0级

元素选择器 -- 权值1 -- 权级1级

class选择器 -- 权值10 -- 权级2级

id选择器 -- 权值100 -- 权级3级

内联选择器 -- 权值1000 -- 权级4级

! important -- 权值10000 -- 权级5级

 

注意:

①权值相同时,后面的选择器会覆盖前面的选择器相同的属性。

 

 

结果:

 

 

 

②权值不同时,权重高的选择器生效。

 

 

结果:

 

 

 

 

 ③权值不能跃迁(选择器的权级无法跃迁)

例:就算class选择器加起来的权值超过10,也比不上一个id选择器

 

 

 结果:

 

 

 

 

④ 其他

·伪类选择器和属性选择器的权重相当于类选择器的权重,权级为2级。

·伪元素选择器的权重相当于元素选择器的权重,权级为1级。

·子代和后代有可能是元素选择器、类选择器、id选择器,因此要根据具体情况来具体分析。

 

结语:

 第一次写博客,有啥错误或者需要改进的地方,还请大佬们指出~~~~

 

posted @ 2020-09-21 00:43  Amily_mo  阅读(80)  评论(0编辑  收藏  举报