0
点赞
收藏
分享

微信扫一扫

CSS 权重

眼君 2022-07-27 阅读 85


仅供学习,转载请注明出处





CSS 权重_选择器


CSS权重

CSS权重指的是样式的优先级,有两条或多条样式作用于一个元素,权重高的那条样式对元素起作用,权重相同的,后写的样式会覆盖前面写的样式。

权重的等级

可以把样式的应用方式分为几个等级,按照等级来计算权重

1、!important,加在样式属性值后,权重值为 10000
2、内联样式,如:style=””,权重值为1000
3、ID选择器,如:#content,权重值为100
4、类,伪类和属性选择器,如: content、:hover 权重值为10
5、标签选择器和伪元素选择器,如:div、p、:before 权重值为1
6、通用选择器(*)、子选择器(>)、相邻选择器(+)、同胞选择器(~)、权重值为0

权重的计算实例

1、实例一:

<style type="text/css">
div{
color:red !important;
}
</style>
......
<div style="color:blue">这是一个div元素</div>
<!--
两条样式同时作用一个div,上面的样式权重值为10000+1,下面的行间样式的权重值为1000,
所以文字的最终颜色为red
-->

上面的例子可以先写一个内联样式,然后再使用div标签选择器,最后再加上​​!important​​ 参数来看看效果。

内敛样式的div




CSS 权重_权重_02


此时可以看到文字已经是蓝色的了。

使用div标签选择器




CSS 权重_css_03


可以看出,div标签选择器的权重很小,所以无法设置红色覆盖蓝色。

设置权重最高的 !important 参数




CSS 权重_css_04


设置了​​!important​​参数之后,字体立即就变为红色了。

2、实例二:

<style type="text/css">
#content div.main_content h2{
color:red;
}
#content .main_content h2{
color:blue;
}
</style>
......
<div id="content">
<div class="main_content">
<h2>这是一个h2标题</h2>
</div>
</div>
<!--
第一条样式的权重计算: 100+1+10+1,结果为112;
第二条样式的权重计算: 100+10+1,结果为111;
h2标题的最终颜色为red
-->

实践开发情况中,这种样式权重比较的情况应该是比较少的。但是,也可以用这个例子演示一下。

首先编写 id选择器 + 类选择器 + h2标签选择器




CSS 权重_css_05


在上面样式选择的基础上,再增加一个div标签选择器




CSS 权重_选择器_06


微信公众号

CSS 权重_选择器_07

举报

相关推荐

0 条评论