將兩個或更多CSS 規則應用於同一文字時,這些規則可能會發生衝突並產生意外的結果。瀏覽器以下列方式套用CSS 規則:
如果將兩種規則套用至相同文本,瀏覽器顯示這兩種規則的所有屬性,除非特定的屬性發生衝突。例如,一種規則可能指定文字顏色為藍色,而另一種規則可能指定文字顏色為紅色。
如果套用於同一文字的兩種規則的屬性發生衝突,則瀏覽器顯示最裡面的規則(離文字本身最近的規則)的屬性。因此,如果外部樣式表和內聯樣式同時影響文字元素,則會套用內聯樣式。
如果有直接衝突,則自訂CSS 規則(使用class 屬性應用的規則)中的屬性將覆寫HTML 標籤樣式中的屬性。
在下面的範例中,為h1 定義的樣式可以指定所有h1 段落的字體、大小和顏色,但套用於該段落的自訂CSS 規則.Blue 將覆蓋h1 樣式中的顏色設定。另一個自訂CSS 規則.Red 將覆蓋.Blue,因為它位於.Blue 樣式的內部。
<h1><span class="Blue">This paragraph is controlled by the .Blue custom style and h1
HTML tag style.<span class="Red">Except this sentence is controlled by the .Red style.</span>
Now we're back to the .Blue style.</span></h1>