由color的定義可知,這個屬性在網(wǎng)頁設(shè)計是可以繼承的。這是有道理的,因為如果聲明body {color:gray;},網(wǎng)頁設(shè)計人員可能希望該段落中的所有文本也應(yīng)當(dāng)是灰色,即便是強(qiáng)調(diào)文本、粗體文本等也不例外。當(dāng)然,如果設(shè)計人員希望這些元素有不同的顏色,這也很容易,如圖9-7所示:
em {color:gray;}
p {color:black;}
圖9-7:為不同元素設(shè)置不同顏色
由于color是可以繼承的,理論上講,可以把一個文檔中的所有正常文本設(shè)置為某種顏色,如通過聲明body{color:red;}設(shè)置為紅色。這會把所有沒有其他樣式的文本變成紅色(如錨就不包含在內(nèi),錨有其自己的顏色樣式)。不過,還有一些瀏覽器對表之類的元素設(shè)置有預(yù)定義的顏色,這就使得body顏色無法繼承到表單元格中。在這種瀏覽器中,由于table元素的color值由瀏覽器定義,瀏覽器的值會比繼承的值更優(yōu)先。這一點很討厭,也沒有必要,不過好在網(wǎng)頁設(shè)計人員解決這個問題(往往)很容易,只需使用列出各表元素的選擇器。例如,要讓所有表內(nèi)容與文檔體一樣都是紅色,可以用以下規(guī)則:
body,table,td,th{color:red;}
這一般都能解決網(wǎng)站建設(shè)中的問題。注意,對于大多數(shù)現(xiàn)代瀏覽器來說,都沒有必要使用這種選擇器,因為現(xiàn)代瀏覽器早已經(jīng)修正了先前版本中存在的這種繼承bug。
當(dāng)前文章標(biāo)題:網(wǎng)頁設(shè)計中的繼承顏色
當(dāng)前URL:http://m.ww44088.com/news/wzzz/inherited-color.html