【CSS】CSS选择器权重

本文详细介绍了CSS选择器的权重计算规则,包括!important、行内样式、ID、类、属性、伪类、标签和伪元素的选择器权重。重点强调了在同一元素的同一属性上的权重比较,以及当权重相同时的就近原则。此外,文章通过实例解释了伪元素与外层标签选择不同元素的情况,澄清了可能的误解。
摘要由CSDN通过智能技术生成

参考链接

深入理解CSS选择器优先级

CSS 选择器及权重

你必须懂的css样式权重和优先级


笔记

同一元素的同一属性权重:

!important > 行内样式 > id 选择器 > (class 、属性、伪类选择器 )> (标签、伪元素选择器 )> 通配选择器


具体计算规则见下文。

注意,优先级比较的是相同元素的相同属性

  1. 如果!important被用于一个简写的样式属性,那么这条简写的样式属性所代表的子属性都会被应用上!important。 例如:background: blue !important;
  2. 如果两条样式都使用!important,则权重值高的优先级更高
  3. 样式指向同一元素,权重规则生效,权重大的被应用
  4. 样式指向同一元素,权重规则生效,权重相同时,就近原则生效,后面定义的被应用
  5. 样式不指向同一元素时,权重规则失效,就近原则生效,离目标元素最近的样式被应用
  6. 层次选择器不改变优先级

优先级是由 A 、B、C、D 的值来决定的,其中它们的值计算规则如下:

  • 如果存在行内样式,那么 A = 1,否则 A = 0
  • B 的值等于 ID选择器(#id) 出现的次数;
  • C 的值等于 类选择器(.class)属性选择器(a[href^="https"])伪类(:first-child) 出现的总次数;
  • D 的值等于 标签选择器(h1,a,div)伪元素(::before,::after) 出现的总次数。

从左至右比较,如果是样式优先级相等,取后面出现的样式。


补充说明

其他的情况测试在上面的参考

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值