一. 继承性
继承:有一些属性,当给自己设置的时候,自己的后代都继承上了,这便是继承性。继承性从自己开始,直到最小的元素。
继承的属性有:color
、text-开头的
、line-开头的
、font-开头的
、
文字样式的,都能继承,而所有关于盒子的、定位的、布局的属性都不能继承。
二. 层叠性
层叠性:就是CSS
处理冲突的能力。所有的权重计算,没有任何兼容问题
2.1 当选择器,选择上了某个元素的时候,那么要这样统计权重
统计权重的顺序:id的数量,类的数量 ,标签的数量
Snip20161108_11.png2.2 如果权重一样,那么写在后面的为准
Snip20161108_12.png2.3 如果不能直接选中某个元素,通过继承性影响的话,那么权重为0
Snip20161108_13.png2.4 如果大家都是0,则就近原则(谁描述近,就听谁的)
Snip20161108_14.png大杂烩
Snip20161109_1.png Snip20161109_2.png Snip20161109_3.png额外补充关于权重
1.同一标签,携带了多个类名,有冲突
<p class="cls1 cls2">我是啥颜色???</p>
<p class="cls2 cls1">我是啥颜色???</p>
与结构中的顺序无关,而与css的顺序有关
.cls1{
color:red;
}
.cls2{
color:yellow;
}
结果是yellow.因为yellow写在后面
2.!important(重要的)标记
!important
来给一个属性提交权重,这个属性的权重就是无穷大。语法:k:v!important
!important
提升的是一个属性,而不是一个选择器!important
无法提升继承的权重,该是0还是0HTML
结构
<div>
<p> 猜猜我是啥颜色</p>
</div>
CSS
样式
div{
color: red!important;
}
p{
color: gold;
}
最终显示的颜色为gold
,因为!important
无法提升它的权重,因为p
标签已经选中了,故显示颜色为gold
!important
不影响就近原则
3.权重计算图例总结
权重总结
1>先看有没有选中,如果选中,则以(id数量,类数量,标签数量)来计算权重,谁大听谁的,如果都一样,听后写的为准。
2>如果都没有选中,那么权重为0,如果大家都是0,就近原则。
网友评论