哪些属性可以继承?
color、text-开头的、line-开头的、font-开头的
- 这些关于文字样式的,都能够继承;
- 所有关于盒子的、定位的、布局的属性都不能继承。
- 继承性是从自己开始,直到最小的元素。
层叠性
当选择器,选择上了某个元素的时候,那么要这么统计权重:(id的数量,类的数量,标签的数量)
权重问题大总结:
- 选择上了,数权重,(id的数量,类的数量,标签的数量)。如果权重一样,谁写在后面听谁的。
-
没有选择上,通过继承影响的,那么权重是0,就近原则,谁描述的近听谁的。如果描述的一样近,比如选择器权重,如果权重再一样重,谁写在后面听谁的。
-
继承的权重是0
权重问题深入
1、同一个标签,携带多个类名,有冲突:
<p class="spec1 spec2">我是什么颜色?</p>
<p class="spec2 spec1">我是什么颜色?</p>
和在标签中的挂类名的书序无关,只和css的顺序有关:
<style>
spec2{
color:blue;
}
.spec1{
color:red;
}
</style>
2、!important标记
来给一个属性提高权重。这个属性的权重就是无穷大。
font-size:40px !important;
错误的:
font-size:40px; !important; → 不能把!important写在外面
font-size:40px important; → 不能忘记感叹号
1) !important提升的是一个属性,而不是一个选择器
2) !important无法提升继承的权重,该是0还是0
3) !important不影响就近原则
如果大家都是继承来的,按理说应该按照“就近原则”,!important不影响就近原则,远的,永远是远的。不能给远的写一个!important,干掉近的。
!important做网站的时候,不允许使用。因为会让css写的很乱。