css权重如何计算的?

时间: 2019-12-21阅读: 102标签: 权重

CSS权重是由四个数值决定,看一张图比较好解释:


图里是英文的,我翻译过来分别说一下,4个等级的定义如下:

  • 第一等:内联样式,如:,权值为1000.(该方法会造成css难以管理,所以不推荐使用)

  • 第二等:ID选择器,如:#header,权值为0100.

  • 第三等:类、伪类、属性选择器如:.bar, 权值为0010.

  • 第四等:标签、伪元素选择器,如:div ::first-line 权值为0001.

最后把这些值加起来,再就是当前元素的权重了。

其他:

  • 无条件优先的属性只需要在属性后面使用!important。它会覆盖页面内任何位置定义的元素样式。(ie6支持上有些bug)。

  • 通配符,子选择器,相邻选择器等。如*,>,+, 权值为0000.

  • 继承的样式没有权值。


CSS权重计算方式

  • 计算选择符中的ID选择器的数量(=a)

  • 计算选择符中类、属性和伪类选择器的数量(=b)

  • 计算选择符中标签和伪元素选择器的数量(=c)

  • 忽略全局选择器

在分别计算a、b、c的值后,按顺序连接abc三个数字组成一个新的数字,改值即为所计算的选择符的权重。如果两个选择符的计算权重值相同,则采取“就近原则”。

示例:

div#app.child[name="appName"] /a=1,b=2,c=1 —>权重 = 1 + 100 + 10 +10 = 121/
站长推荐

1.阿里云: 本站目前使用的是阿里云主机,安全/可靠/稳定。点击领取2000元代金券、了解最新阿里云产品的各种优惠活动点击进入

2.腾讯云: 提供云服务器、云数据库、云存储、视频与CDN、域名等服务。腾讯云各类产品的最新活动,优惠券领取点击进入

3.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/7537

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!

文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全运营推广