將兩個或更多 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 were back to the .Blue style.</span></h1>