iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >css权重有什么用
  • 174
分享到

css权重有什么用

2024-04-02 19:04:59 174人浏览 薄情痞子
摘要

这篇文章主要讲解了“CSS权重有什么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css权重有什么用”吧! CSS权重指的是样

这篇文章主要讲解了“CSS权重有什么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css权重有什么用”吧!

CSS权重指的是样式的优先级,决定了css规则怎样被浏览器解析直到生效;当两条或多条样式作用于一个元素时,权重高的那条样式对元素起作用,而权重相同的,后写的样式会覆盖前面写的样式。

教程操作环境:windows7系统、css3&&HTML5版、Dell G3电脑。

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

  • 权重决定了你css规则怎样被浏览器解析直到生效。“css权重关系到你的css规则是怎样显示的”。

  • 当很多的规则被应用到某一个元素上时,权重是一个决定哪种规则生效,或者是优先级的过程。

  • 每个选择器都有自己的权重。你的每条css规则,都包含一个权重级别。 这个级别是由不同的选择器加权计算的,通过权重,不同的样式最终会作用到你的网页中 。

  • 如果两个选择器同时作用到一个元素上,权重高者生效。

权重的基本规则

1、相同的权重:以后面出现的选择器为最后规则(比如写了相同的两个样式 #content h2 {color:red} )

2、不同的权重,权重值高则生效

3、!important(无限大)>行内样式(权重1000)>id选择器(权重100)>类选择器(10)=伪类选择器(10)=属性选择器(10)>元素选择器(1)>通用选择器(0)>继承的样式>浏览器默认的样式。

4、元素选择器相加永远没有类选择器的权重大。

选择器可能会包含一个或者多个与权重相关的计算点,若经过计算得到的权重值越大,则认为这个选择器的权重高

css权重计算

如果多个不同类型的选择器同时为一个对象设置样式时,该对象将如何显示最终样式,下面给出一个简单的计算方法。对于常规选择器它们都拥有一个优先级加权值,说明如下。

  • 标签选择器:优先级加权值为 1。

  • 伪元素或伪对象选择器:优先级加权值为 1。

  • 类选择器:优先级加权值为 10。

  • 属性选择器:优先级加权值为 10。

  • ID选择器:优先级加权值为 100。

  • 其他选择器:优先级加权值为 0,如通配选择器等。

然后,以上面加权值数为起点来计算每个样式中选择器的总加权值数。计算的规则如下:

  • 统计选择器中 ID 选择器的个数,然后乘以100。

  • 统计选择器中类选择器的个数,然后乘以 10。

  • 统计选择器中的标签选择器的个数,然后乘以 1。

依此方法类推,最后把所有加权值数相加,即可得到当前选择器的总加权值,最后根据加权值来决定哪个样式的优先级大。

对于由多个选择器组合而成的复合型选择器,首先分别计算每个组成选择器的加权值,接着相加得出当前选择器的总分,最后根据选择器的分值大小,分值越高则优先级越高,那么就将应用它所设置的样式。

如果分值相同,则根据位置关系来进行判断,靠近对象的样式就应有高的优先级。

【示例】通过内嵌样式为同一个元素使用不同的复合选择器为其设置样式属性,通过优先级规则进行比较得出最终样式属性值。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>CSS样式优先级</title>
<style type="text/css">
div{
    margin: 0 auto;  
    text-align: center;  
}
.Cent{
    width: 400px;  
    border: 1px dashed #CC0099;  
    padding: 10px 15px;  
}
#imp{border: 1px dashed #3366FF;   }
.Cent{ font-size: 14px;   }
.Cent p{
    font-size: 16px;  
    font-weight: bold;  
}
.Cent .duanluo {
    font-weight: nORMal;  
    line-height:1.5em;  
    text-align:left;  
}
.Cent .duanluo span{ color:#009966;   }
#imp span{
    color: #669933;  
    font-weight: bold;  
    font-size:22px;  
}
span{ font-size: 30px important;   }
span{ font-size: 40px; ! important   }
</style>
</head>
<body>
<div class="Cent" id="imp">
    <p class="duanluo" id="DL"><span>CSS</span>(Cascading Style Sheet,可译为“层叠样式表”或“级联样式表”)是一组格式设置规则,用于控制 WEB 页面的外观。通过使用 CSS 样式设置页面的格式,可将页面的内容与表现形式分离。页面内容存放在 HTML 文档中,而用于定义表现形式的 CSS 规则则存放在另一个文件中或 HTML 文档的某一部分,通常为文件头部分。将内容与表现形式分离,不仅可使维护站点的外观更加容易,而且还可以使 HTML 文档代码更加简练,缩短浏览器的加载时间。
</p>
</div>
</body>
</html>

页面效果如下图所示。

css权重有什么用

在上面示例中,查看浏览器效果并进行逐步分析代码,需要注意的是测试时:下面每一步测试时,后面的代码需要删除,故浏览器有多次显示结果,每一步都进行浏览器显示查看结果。

第 1 步

实现浏览器居中,针对 div 标签设置元素居中属性margin: 0 auto;,以及文本居中属性text-align:center;。

div { margin: 0 auto; text-align: center; }
  • 第 2 步

Cent 层设置宽度为 400 像素,如果没有宽度设置,则浏览器上的居中也将无效,接着设置 4 个方向的内间距,最后设置 1 像素颜色为粉红色虚线边框线。

.Cent{ width: 400px; border: 1px dashed #CC0099; padding:10px 15px; }
  • 第 3 步

通过 ID 值引用 Cent 层,定义 1 像素颜色为粉蓝色虚线边框线,根据前面介绍的优先级规则:类选择器 10 分、ID 选择器 100 分,最终边框线颜色为蓝色。

如果将类别选择器 Cent 层和 ID 选择器 #imp 定义的顺序颠倒过来(如下所示),最终结果依然是蓝色,其原因在于 ID 选择器优先级别高于类选择器。

.Cent{ width: 400px; border: 1px dashed #CC0099; padding: 10px 15px; }
#imp { border: 1px dashed #3366FF; }
  • 第 4 步

.Cent{ } 定义字体大小为 14 像素,而 .Cent p{} 定义字体大小为 16 像素。根据前面介绍的优先级规则:类选择器 10 分、标签选择器 1 分,那么 .Cent{ } 为 10 分、.Cent p{} = 10+1 = 11分,故最终结果为段落字体大小为 16 像素且字体加粗显示。

.Cent { font-size: 14px; }
.Cent p { font-size: 16px; font-weight: bold; }
  • 第 5 步

Cent 层中段落添加 class 名 duanluo,定义字体不再加粗显示、行高 1.5em、文本左对齐,上一步的加粗设置如果字体大小无效,则查看加粗结果,行高设置使用相对单位,这样可以避免字体大小的改变而影响原先段落文字之间的距离。

段落内的 <span> 标签设置字体颜色为 #009966,而通过 ID 值设置字体颜色为 #669933。根据前面介绍的优先级规则:类选择器 10 分、标签选择器 1 分、ID 选择器 100 分,故 .Cent .duanluo span 得分 = 10+10+1 = 21分,而 #imp span 得分 = 100+1 = 101 分,最终字体颜色为 #669933。

.Cent .duanluo { font-weight:normal; line-height:1.5em; text-align:left }
.Cent .duanluo span{ color: #009966; }
#imp span{ color:#669933; font-weight:bold; font-size:22px }
  • 第 6 步

在设置段落字体大小时,最终 .Cent p 设置的字体大小为浏览器显示结果:16像素,而通过 ID 选择器定义字体大小后,字体大小变为 22 像素。

这里通过 !important 命令将 <span> 字体大小设置为 30 像素,因 !important 命令权限无限大,即分数值较高,暂定值为 1000,故 #imp span 分数为 101,小于 !important 命令值 1000,最终结果为 30 像素。

若span{ font-size:30px !important; }和#imp span{ font-size:5Opx !important; }进行比较,根据前面介绍的优先级规则:ID 选择器 100 分、标签选择器 1 分、!important 命令值 1000,故 span{} 得分为 1000(内部属性中 !important)+1(标签选择器)= 1001 分,而 #imp span 得分为 1000(内部属性中 !important)+100(ID选择器)+1(标签选择器)= 1101 分。

针对 !important 命令进行一次错误的写法并定义字体大小为 40 像素,通过浏览器发现:!important 命令放置在声明语句与分号之间,否则无效。

.Cent p { font-size: 16px; }
#imp span{ color:#669933; font-weight:bold; font-size:22px }
span{ font-size: 30px !important; }
span { font-size: 40px; !important }  

感谢各位的阅读,以上就是“css权重有什么用”的内容了,经过本文的学习后,相信大家对css权重有什么用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: css权重有什么用

本文链接: https://www.lsjlt.com/news/87504.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • css权重有什么用
    这篇文章主要讲解了“css权重有什么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css权重有什么用”吧! CSS权重指的是样...
    99+
    2024-04-02
  • css权重是什么意思
    这篇文章将为大家详细讲解有关css权重是什么意思,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。css权重指的是css选择符的优先级,优先级高的css样式会覆盖优先级底的css样式,优先级越高说明权重越高,...
    99+
    2023-06-15
  • css中权重的意思是什么
    本篇内容主要讲解“css中权重的意思是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css中权重的意思是什么”吧! css中权重...
    99+
    2024-04-02
  • CSS选择器的权重是什么
    这篇文章主要介绍了CSS选择器的权重是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS选择器的权重是什么文章都会有所收获,下面我们一起来看看吧。 选择器的权重 权重...
    99+
    2024-04-02
  • 使用css怎么增加权重
    这篇文章给大家介绍使用css怎么增加权重,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。我们希望页面中的所有原子类,都是权重非常大的,这样,一旦页面中的任何一个标签,携带了这个原子类,立即有样式产生,而不会被自己的样式所...
    99+
    2023-06-15
  • css中的层叠性及权重是什么
    本文小编为大家详细介绍“css中的层叠性及权重是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“css中的层叠性及权重是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。层叠...
    99+
    2024-04-02
  • Css常用的排序方式权重分配是什么
    这篇文章将为大家详细讲解有关Css常用的排序方式权重分配是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。排序方式:1、按类型 如,显示和浮动、定位、尺寸、字体等2、按...
    99+
    2024-04-02
  • css如何设置权重
    小编给大家分享一下css如何设置权重,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 在css中,可以...
    99+
    2024-04-02
  • 前端杂谈: CSS 权重 (Specificity)
    前端杂谈: CSS 权重 (Specificity)css 权重想必大家都听说过, 一些简单的规则大部分人也都知道:较长的 css selector 权重会大于较短的 css selectorid selector 权重高于 class s...
    99+
    2023-06-05
  • css是什么?有什么用?
    CSS,即层叠样式表(Cascading Style Sheets),是一种用于网页设计的样式语言。通过CSS,你可以改变HTML页面上各个元素的外观、布局和行为。CSS最初是由赛迪公司(斯佩克特公司)的开发者创建的,并于1996年成为一项...
    99+
    2023-05-14
  • css优先选择权是什么
    小编给大家分享一下css优先选择权是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 首先就是CSS规则的speci...
    99+
    2024-04-02
  • css中权重值的示例分析
    这篇文章主要介绍了css中权重值的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。css中有很多选择器,那在多个选择器都作用于同一个元...
    99+
    2024-04-02
  • CSS优先权规则是什么
    本篇内容介绍了“CSS优先权规则是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!HTML高级技巧:详解...
    99+
    2024-04-02
  • CSS Hack是什么意思?css hack有什么用?
    这篇文章将为大家详细讲解有关CSS Hack是什么意思?css hack有什么用?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。CSS Hack CSS Hack是一种利用浏览器特定缺陷来强制特定的CSS...
    99+
    2024-04-02
  • css中padding有什么用
    这篇文章主要介绍了css中padding有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在css中,padding的意思为“填充”或“内边距”,用于定义元素边框与元素内...
    99+
    2023-06-15
  • HTML和css有什么用
    这篇文章给大家分享的是有关HTML和css有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、HTML网页的结构<!doctype html><html&...
    99+
    2024-04-02
  • css中Anima有什么用
    这篇文章主要为大家展示了“css中Anima有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css中Anima有什么用”这篇文章吧。 轻量级(当 gzi...
    99+
    2024-04-02
  • css中@keyframes有什么用
    这篇文章主要介绍css中@keyframes有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   css@keyframes   作用:通过@keyframes规则,您能够...
    99+
    2024-04-02
  • css中@namespace有什么用
    这篇文章给大家分享的是有关css中@namespace有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。@namespace@namespace是用来定义使用在CSS样式表中...
    99+
    2024-04-02
  • css中@charset有什么用
    这篇文章主要介绍了css中@charset有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。@charset@charset用于定义样式...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作