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