Cascade Rule 串接規則
CSS具備串接的規則和明確度,用來處理樣式沖突的情況。串接規則會依重要性排序,決定采用哪一種樣式。
在串接規則中,重要性最高的是標示有「!import」的使用者樣式,其次是同樣標有「!import」的作者樣式表。
在沒有標「!import」時,作者樣式表的重要性高于使用者。透過重要性規定,瀏覽器就能決定呈現哪一種樣式,而如果重要性一致時,則后出的規則會覆寫較早的規則。
Specificity 明確度
由于CSS具有可串接、繼承的特性,某一個元素有可能被指定不同的樣式。發生這種情況時,瀏覽器就會依明確度來決定呈現那一種樣式。
明確度規定每一種選取器都具有一個計數值,例如ID選取器的明確度是「0,1,0,0」,而類別選取器的明確度是「0,0,1,0」,當某個元素同時套用兩者,而且部分樣式又有沖突時,因為ID選取器的明確度較高,就會以它的值為主。
CSS Hack CSS小技巧
CSS在瀏覽器支持與實作的方式不同,甚至存在bug,都讓設計人員在跨瀏覽器的頁面設計遇到挑戰。為了解決這些難題而發展出的技巧,便稱為CSS Hack。
例如IE 5在Width這個語法實作,與W3C制定的標準有所不同,造成它與其它瀏覽器會呈現不同的結果。為了解決這個問題,而有所謂「Box Model Hack」的技巧,讓IE 5也能和其它瀏覽器呈現相同的結果。