css两个性质:
1) 继承性。有一些属性给祖先元素,全部的后代元素都集成上了。css
2) 层叠性。层叠性是一种能力,就是处理冲突的能力。当不一样选择器,对一个标签的同一个样式,有不一样的值,听谁的?这就是冲突。css有着严格的处理冲突的机制:布局
如下是权重的规则:标签的权重为1,class的权重为10,id的权重为100,如下例子是演示各类定义的权重值:性能
/*权重为1*/ div{ } /*权重为10*/ .class1{ } /*权重为100*/ #id1{ } /*权重为100+1=101*/ #id1 div{ } /*权重为10+1=11*/ .class1 div{ } /*权重为10+10+1=21*/ .class1 .class2 div{ }
若是权重相同,则最后定义的样式会起做用,可是应该避免这种状况出现! important不容许使用。由于会让css写的很乱。spa
<style> .spec2{ color:blue; } .spec1{ color:red; } </style> <p class="spec1 spec2">我是什么颜色?</p> <p class="spec2 spec1">我是什么颜色?</p>
Answer :都是红色的,由于css中red写在后面。code
三栏自适应blog
圣杯布局 Holy Grail Layout继承
双飞翼布局 Flying Swing Layout图片
二栏自适应it