選擇器的分組
你可以對選擇器進行分組,這樣,被分組的選擇器就可以分享相同的聲明。用逗號將需要分組的選擇器分開。在下面的例子中,我們對所有的標題元素進行了分組。所有的標題元素都是綠色的。
h1, h2, h3, h4, h5, h6 {
color:green;
}
繼承及其問題
根據 CSS,子元素從父元素繼承屬性。但是它并不總是按此方式工作。看看下面這條規則:
body{
font-family:Verdana,sans-serif;
}
根據上面這條規則,站點的 body 元素將使用 Verdana 字體(假如訪問者的系統中存在該字體的話)。
通過 CSS 繼承,子元素將繼承最高級元素(在本例中是 body)所擁有的屬性(這些子元素諸如 p, td, ul, ol, ul, li, dl, dt,和 dd)。不需要另外的規則,所有 body 的子元素都應該顯示 Verdana 字體,子元素的子元素也一樣。并且在大部分的現代瀏覽器中,也確實是這樣的。
但是在那個瀏覽器大戰的血腥年代里,這種情況就未必會發生,那時候對標準的支持并不是企業的優先選擇。比方說,Netscape 4 就不支持繼承,它不僅忽略繼承,而且也忽略應用于 body 元素的規則。IE/Windows 直到 IE6 還存在相關的問題,在表格內的字體樣式會被忽略。我們又該如何是好呢?
關于繼承,還有一個特別的地方,如果<html>上沒有設置background相關屬性,而<body>上有設置,則<body>會向上傳播到<html>上;
并不是所有屬性都能繼承,比如CSS盒子模型相關屬性就是不能繼承的。
繼承是一個詛咒嗎?
如果你不希望 "Verdana, sans-serif" 字體被所有的子元素繼承,又該怎么做呢?比方說,你希望段落的字體是 Times。沒問題。創建一個針對 p 的特殊規則,這樣它就會擺脫父元素的規則:
body {
font-family:Verdana,sans-serif;
}
td, ul, ol, ul, li, dl, dt, dd {
font-family:Verdana,sans-serif;
}
p {
font-family:Times,"TimesNewRoman",serif;
}
關于繼承其實是一個很好、很強大的功能,因為有繼承,我們可以少寫很多code.
轉載請保留原文地址: http://htdxkj.cn/show-358.html