您现在的位置是:网站首页> 编程资料编程资料
浅谈CSS中的继承性,特殊性,层叠性和重要性CSS中选择器的权重值的计算css 权重值(层叠性)实例详解
2021-09-04
858人已围观
简介 下面小编就为大家带来一篇浅谈CSS中的继承性,特殊性,层叠性和重要性。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
1. 继承性
CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定 html 标签元素,而且应用于其后代。比如下面代码:如某种颜色应用于 p 标签,这个颜色设置不仅应用 p 标签,还应用于 p 标签中的所有子元素文本,这里子元素为 span 标签。
- p{color:red;}
- <p>三年级时,我还是一个<span>胆小如鼠span>的小男孩。p>
- p{border:1px solid red;}
在上面例子中它代码的作用只是给 p 标签设置了边框为1像素、红色、实心边框线,而对于子元素 span 是没用起到作用的。
2. 特殊性
有的时候我们为同一个元素设置了不同的 CSS 样式代码,那么元素会启用哪一个 CSS 样式呢?我们来看一下面的代码:
- p{color:red;}
- .first{color:green;}
- <p class="first">三年级时,我还是一个<span>胆小如鼠span>的小男孩。p>
p 和 .first 都匹配到了 p 这个标签上,那么会显示哪种颜色呢?green是正确的颜色,那么为什么呢?是因为浏览器是根据权值来判断使用哪种 css 样式的,权值高的就使用哪种 css 样式。
下面是权值的规则:
标签的权值为1,类选择符的权值为10,ID选择符的权值最高为100。例如下面的代码:
- p{color:red;} /*权值为1*/
- p span{color:green;} /*权值为1+1=2*/
- .warning{color:white;} /*权值为10*/
- p span.warning{color:purple;} /*权值为1+1+10=12*/
- #footer .note p{color:yellow;} /*权值为100+10+1=111*/
注意:还有一个权值比较特殊–继承也有权值但很低,有的文献提出它只有0.1,所以可以理解为继承的权值最低。
3. 层叠性
我们来思考一个问题:如果在html文件中对于同一个元素可以有多个css样式存在并且这多个css样式具有相同权重值怎么办?好,这一小节中的层叠帮你解决这个问题。
层叠就是在html文件中对于同一个元素可以有多个css样式存在,当有相同权重的样式存在时,会根据这些css样式的前后顺序来决定,处于最后面的css样式会被应用。
如下面代码:
- p{color:red;}
- p{color:green;}
最后 p 中的文本会设置为green,这个层叠很好理解,理解为后面的样式会覆盖前面的样式。
所以前面的css样式优先级就不难理解了:
内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)。
4. 重要性
我们在做网页代码的时,有些特殊的情况需要为某些样式设置具有最高权值,怎么办?这时候我们可以使用!important来解决。
如下代码:
- p{color:red!important;}
- p{color:green;}
- <p class="first">三年级时,我还是一个<span>胆小如鼠span>的小男孩。p>
这时 p 段落中的文本会显示的red红色。
注意:!important要写在分号的前面
这里注意当网页制作者不设置 css 样式时,浏览器会按照自己的一套样式来显示网页。并且用户也可以在浏览器中设置自己习惯的样式,比如有的用户习惯把字号设置为大一些,使其查看网页的文本更加清楚。这时注意样式优先级为:浏览器默认的样式 < 网页制作者样式 < 用户自己设置的样式,但记住 !important 优先级样式是个例外,权值高于用户自己设置的样式。
以上这篇浅谈CSS中的继承性,特殊性,层叠性和重要性就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
相关内容
- 使用CheckBox的属性制作纯css动态导航栏 CSS利用伪元素实现导航栏斜线分隔基于html和CSS3制作简单侧边导航栏基于html和CSS3制作酷炫的导航栏CSS3的一个简单导航栏实现css控制列表与导航的制作(水平导航条、垂直翻转的列表、垂直导航栏、内纯css实现的下拉导航栏附html结构及css样式css3与html5实现响应式导航菜单(导航栏)效果分享css 等宽导航栏设计技巧仿支付宝CSS网站导航栏
- 关于css 行元素和块元素 相互转换 居中
- css position 设置元素的定位方式详解浅谈CSS中display/float/position属性值的相互影响css(display,float,position)深入理解CSS position:absolute全面了解CSS 定位之position全面了解使用CSS3的ruby-position固定注音位置的用法示例总结CSS的position定位属性在使用的一些重点css关于position属性的用法详解(绝对定位和相对定位的混淆)
- css渐变色彩 省略标记 嵌入字体 文本阴影全面了解CSS3中新增的对文本和字体的设置CSS 文本字体颜色设置方法(CSS color)CSS 有序或者无序列表的前面的标记 list-style-type 属性的实现CSS如何设置列表样式属性(看这篇文章就够用了)CSS字体、文本、列表属性详细介绍
- CSS样式覆盖规则全面了解纯CSS3绘制各种不规则图形图标样式特效源码权重和层叠规则决定了CSS样式优先级CSS教程:网页中多个样式表顺序问题css样式层叠规则详解
- 浅谈CSS样式权值CSS样式覆盖规则全面了解引用css样式的书写格式详解Web前端开发css基础样式总结(推荐)纯CSS3超酷书架样式404页面特效源码css 常用样式(分享)
- 浅析word-break work-wrap的区别CSS word-wrap同word-break的区别 CSS的Word_break、Word_Wrap的区别及应用word-break:break-all和word-wrap:break-word区别总结
- select元素中设置padding效果的方法在IE8 FF中使用padding设置select控件文字垂直居中
- CSS实现三角效果的简单实例CSS3 画基本图形,圆形、椭圆形、三角形等用CSS制作三角形和按钮的简单实例CSS仿网易首页的头部菜单栏按钮和三角形制作方法使用css实现三角符号效果
- ie7中overflow:auto无效的解决方法详解CSS中zoom属性或overflow:auto属性清除浮动的作用DIV背景图片在Firefox下不显示通过overflow:auto可解决CSS教程:导致一些问题的overflow-CSS教程-网页制作-网页教学网overflow:auto的用法详解