CSS特指度表示什么,特指度写法要注意什么
Admin 2022-11-11 群英技术资讯 273 次浏览
这篇文章我们来了解“CSS特指度表示什么,特指度写法要注意什么”的内容,小编通过实际的案例向大家展示了操作过程,简单易懂,有需要的朋友可以参考了解看看,那么接下来就跟随小编的思路来往下学习吧,希望对大家学习或工作能有帮助。
Q:如果多个规则匹配同一个元素,而且部分声明之间有冲突,那么我们如何知道哪个规则胜出呢?
A:用户代理会计算每个规则中选择符的特指度,然后将其依附到规则中的每个声明上。如果两个或多个属性声明有冲突,特指度最高的声明胜出。而为了计算特指度,用户代理必须把规则“打散”成单独的规则
例如:h1 { color: silver; background: black; }
将变成以下形式。二者的特指度都是 0,0,0,1
,赋予每个声明的值就是它
h1 { color: silver; } h1 { background: black; }
特指度(或权值):表示一个css选择器表达式的重要程度
选择符的特指度由选择符本身的组成部分决定。一个特指度值由四部分构成,例如:0,0,0,0
重要声明[1] | 行内样式 | ID选择符 | Class[2] | Element[3] | 通用选择符 | |
---|---|---|---|---|---|---|
特指度值 | 优先级最高 | 1,0,0,0 | 0,1,0,0 | 0,0,1,0 | 0,0,0,1 | 0,0,0,0 |
重要声明注意:
重要声明要在声明末尾的分号之前插入 !important 。!important 的位置必须正确,否则声明将失效 带有 !important 的声明对特指度没有影响,但它会与不重要的声明分开处理所有带 !important 的声明会放在一起,而特指度冲突就在这个范围内解决
非重要的声明作为一个整体,其中的冲突使用特指度解决
当重要声明和非重要声明冲突时,重要声明始终胜出
特指度写法注意:
特指度值是从左向右比较的。特指度 1,0,0,0 比所有以 0 开头的特指度大,不管后面的数字有多大 通用选择符不增加特指度,它的特指度是 0,0,0,0 ,这与没有特指度是不同的 连接符没有特指度,即连零都没有把声明应用到可以继承的元素上后,那个元素将使用声明的样式渲染;这个值继续沿着树状图向下传播到后代元素,直到没有后代为止 属性值绝不向上传播,即元素的样式绝不传给祖辈元素 在HTML中,向上传播规则有个例外:应用到body元素上的背景样式会传给HTML元素。HTML时文档的根元素,用于定义渲染文档的画布。这一例外仅发生在为body元素设定了背景,而没有为html元素定义背景的情况下继承:是指把一个元素的某些属性值传给其后代的机制(某些样式不仅应用到所指元素上,还应用到元素的后代上)
注意事项:
很多属性是不继承的,这通常是为了避免得到意外的结果 继承的值没有特指度,连零都没有案例:因为通用选择符应用于全部元素,而且特指度为零,所以它声明的颜色gray击败继承的颜色black(由于继承的值没有特指度),因此,em元素渲染为灰色,而不是黑色
* { color: gray; } h1#page-title { color: black; } <h1 id="page-title"> Meerkat <em>Central</em> </h1> <p>Welcome to the best place on the web for meerkat information!</p>
层叠:是一种样式在文档层次中逐层叠加的过程,目的是让浏览器面对某个标签特定属性值的多个来源,确定最终使用哪个值
CSS层叠规则:
按显示权重排序,以!important
标记的规则比没有这一标记的权重高
如果两个规则应用到同一个元素上,而其中一个以 !important
标记,那么有此标记的规则胜出
读者提供的样式中以 !important
标记的声明
创作人员编写的样式中以 !important
标记的声明
创作人员编写的常规声明读者
提供的常规声明
用户代理的默认声明
如果各声明的显示权重和来源相同,那么应该按特指度排序,特指度高的声明胜出 如果两个规则的显示权重、来源和特指度都相同,那么在样式表中的位置靠后的规则胜出
Class:类选择符、属性选择符、伪类选择符 ↩︎
Element:元素选择符、伪元素选择符 ↩︎
本文来自博客园,作者:不二橘子酱,转载请注明原文链接:https://www.cnblogs.com/feeder/p/14979688.html
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
css命名的问题怎样解决?因为css 作用域是全局的,对于一些大项目,参与的人越来越多,那么css命名的问题是需要重视的,因此这篇文章就给大家分享几种解决命名问题的方法和技巧,有需要的朋友可以参考了解。
小编今天来给大家说说看css3截图的实现代码内容,一般的视频网站对于用户上传的视频,在用户上传完成后,可以对播放的视频进行截图,然后作为视频的展示图。有需要的朋友可以参考。
这篇文章主要介绍了Scss编译输出风格整理的相关资料,Scss提供了4种风格输出CSS,以满足更多人的需求,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要介绍了CSS实现移动端横向滚动导航条(PC端也适用),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了css下div下同行多元素右对齐,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008