html选择器优先级如何计算,CSS选择器权重计算与优先级

CSS选择器权重计算与优先级

选择器有优先级,可以通过权重来计算优先级。

一:优先级

等级划分:

第一优先级:css属性+!important是一种强制改变优先级的方法,它会覆盖页面内任何位置定义的元素样式,它拥有最高优先级。

第二优先级:在html中给元素标签加style,即内联样式。

第三优先级:由id选择器来定义。例如,#id{ }会覆盖.classname{ }

第四优先级:由class选择器、属性选择器、伪类选择器定义。如.classname{ }会覆盖div{ }

第五优先级:由元素选择器、伪元素选择器定义。如div{ }覆盖*{ }

第六优先级:通用选择器,如*{ }

css属性+!important>内联样式>ID选择器(#id)>类选择器(.class)=伪类选择器(:hover等)=属性选择器[type]>元素选择器(p等)=伪元素选择器>通用选择器>继承的样式

优先级规则:

同等等级情况下:

1.优先级高的优先。

2.优先级相同时,则采用就近原则,选择后定义的样式。

3.属性后面加 !important 时,绝对优先。

4.继承得来的属性,其优先级最低;

等级不同的情况下,优先级高的优先!!

二、权重:

权重概念:

某一因素或指标相对于某一事物的重要程度,其强调的是因素或指标的相对重要程度,倾向于贡献度或重要性。(权重类比天秤上的砝码)。

权重计算规则

CSS内部是按每条样式的权重值来计算优先级的,各类型的选择器所对应的权重如下:

1.内联样式,如: style="…",权值为1000。

2.ID选择器,如:#box,权值为0100。

3.class,伪类、属性选择器,如.text,权值为0010。

4.元素选择器、伪元素选择器,如div p,权值为0001。

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

6.继承的样式没有权值

算法:权值 = 1000第一等级个数 + 100第二等级个数 + 10第三等级个数 + 1第四等级个数;

举例:

1.内联样式style=”background:blue”权值1000大于id选择器权值100

CSS 选择器权重计算与优先级

#box .text { /*100*/

width: 300px;

height: 300px;

background: yellow;

}

CSS 选择器权重计算与优先级

d412dba98e029295f3388802fd483d97.png

2.id选择器背景属性后+!import绝对优先。

CSS 选择器权重计算与优先级

#box .text { /*100*/

width: 300px;

height: 300px;

background: yellow!important;

}

CSS 选择器权重计算与优先级

01adc7a618919dda0868742e5504ec7b.png

3.当class选择器权值110大于id选择器权值100时,优先级高的优先!

#text { /*100*/

width: 300px;

height: 300px;

background: pink;

}

.a b c d e f g h i j k { /*110*/

width: 100px;

height: 100px;

background: yellow;

}

CSS 选择器权重计算与优先级

7eeee8effa2762d39d7f1c9a2b06b044.png

本文地址:https://blog.csdn.net/m0_51734506/article/details/111145406

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值