CSS中为什么要有层叠机制,可以解决什么问题
Admin 2022-06-10 群英技术资讯 1030 次浏览
这篇文章主要介绍“CSS中为什么要有层叠机制,可以解决什么问题”,有一些人在CSS中为什么要有层叠机制,可以解决什么问题的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。css中为什么要有层叠机制
因为在css中可能会有多个样式同时影响同一个元素的某个属性,层叠机制可以解决作者(写代码的人),用户(浏览页面的人)和用户代理(一般指浏览器)的样式冲突。
在层叠中每个样式规则都有一个权重值,当其中几条规则同时生效时,权重最大的规则优先。一般来说作者指定的样式权重值高于用户样式权重值,用户样式权重高于客户端(用户代理)权重值。一般权重值跟对象,是否有!important,特异度和位置先后有关。在层叠顺序中,以下权重值从小到大
(1)用户代理样式
(2)用户一般样式
(3)作者一般样式
(4)作者重要样式(!important)
(5)用户重要样式(!important)
(6)如果是两个样式来自相同的代码,如都来自作者(代码),并且它们的样式声明同样重要,则根据特异度来计算,特异度高的会覆盖特异度低的
(7)如果特异度也相同,则越往后的样式优先级越高
为什么用户设置的重要样式比作者重要样式优先级高,这样做的原因是为了方便用户实现一些特殊的要求,例如页面字体大小的调整等。
选择器特异度的计算
(1)如果一个声明出现在元素的style属性中,则将a计为1;
(2)b等于选择器中所有ID选择器加起来的数量和
(3)c等于选择器中所有class选择器和属性选择器,以及伪类选择器加起来的数量和
(4)d等于选择器中所有标签选择器和伪元素选择器加起来的数量和
a-b-c-d即是选择器的特异度,比较顺序从a先比起,谁先大则优先级就越高。
注意:
.box{} /*特异度=0,0,1,0*/
.box div{} /*特异度=0,0,1,1*/
#nav li{} /*特异度=0,1,0,1*/
p:first-line{} /*特异度=0,0,0,2*/
style="" /*特异度=1,0,0,0*/
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是CSS3中的border-radius的相关内容。使用border-radius属性可以很轻松的实现圆角效果,小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
HTML5中img标签图片有间隙怎么办?在网页开发中我们会经常使用img标签,当我们在添加多张图片的时候,有一些朋友有遇到图片存在间隙的问题,那么我们如何解决这个间隙,img标签的间距是如何调整的?
css中,可用“nth-child()”选择器来选择表格的偶数行元素,该选择器用于匹配属于其父元素的第n个子元素,当选择器内的值为“2n”时,就会选择偶数个数对象,语法为“表格行元素:nth-child(2n){css样式代码;}”。
这篇文章主要介绍了amazeui页面校验功能的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
本文通过代码给大家介绍css背景和边框标签的一些知识,通过相关属性设置背景颜色,背景图像,对css背景与边框的相关知识感兴趣的朋友一起看看吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008