的確定有很多的文章在談論CSS層疊重點,最近,我讀this one並有一些點我想通了: -爲什麼CSS應用#flowerContainer IMG規則而不是應用#flower規則
- ID重量比階級和階級比標籤
- ID重量相同,內嵌的風格,但更多更因爲內嵌來後,它贏得了壓倒一切的規則
- 更多的選擇重量比即
.container img
規則越少選擇將覆蓋img
規則的更多
看看這個代碼: -
<div id="flowerContainer" >
<img id="flower" src="..." />
</div>
嘗試應用以下規則: -
#flowerContainer img{width:500px;}
#flower {width:300px}
根據第二規則#flower
寬度規則應適用,但#flowerContainer img
應用爲什麼?
不要這樣想更具體。 ID規則(#)應優先於類(。)或元素(img)規則。但是,ID +元素(#IMG)很可能會被視爲更具體的ID,即使ID不適用於元素 –
是的,但這適用於相同權重的規則,即內部和外部樣式表,而內聯和內聯樣式的權重相同,高於內部和外部樣式表。在邏輯上,id僅指元素,因爲每個元素不超過一個id。在我的例子中,我選擇id後跟任何子標記一次,然後我指定元素本身的id一次。我認爲元素ID應該贏得比賽 –
@MostafaNagib - 那麼你需要澄清規則的位置。你的問題表明它們位於同一級別(在同一個文件中),所以標準優先級適用。位置隻影響相同權重的結果。 –