CSS选择器的权重和计算规则(机制)

本文详细解析CSS样式的优先级规则,包括内联样式、ID选择器、类选择器及标签选择器的权重,以及!important标记、声明顺序对样式的实际应用的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从CSS代码存放位置看权重优先级:内嵌样式 > 内部样式表 > 外联样式表。

从样式选择器看权重优先级:important > 内嵌样式 > ID > 类 > 标签 | 伪类 | 属性选择 > 伪元素 > 继承 > 通配符。

CSS权重是由四个数值决定:

第一等:代表内联样式,如: style=””,权值为1000。

第二等:代表ID选择器,如:#content,权值为100。

第三等:代表类、伪类和属性选择器,如.content,:hover,[type="text"],权值为10。

第四等:代表标签选择器和伪元素选择器,如div p,::before,权值为1。

通配选择符(universal selector)(*关系选择符(combinators)(+>~' '||)和 否定伪类(negation pseudo-class)(:not())对优先级没有影响(但是,在 :not() 内部声明的选择器会影响优先级)。

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

权重算出来了,但是某个元素到底用哪个样式,还有3个规则:

1,如果样式上加有!important标记,那么始终采用这个标记的样式;

2、匹配的内容按照CSS权重排序,权重大的优先;

3,如果权重也一样,按照它在CSS样式表里声明的顺序,后声明的优先。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值