6、CSS Id 和 Class类选择器
id 選擇器
id 選擇器可以為標有特定 id 的 HTML 元素指定特定的樣式。
id 選擇器以 "#" 來定義。
下面的兩個 id 選擇器,第一個可以定義元素的顏色為紅色,第二個定義元素的顏色為綠色:
#red {color:red;} #green {color:green;}下面的 HTML 代碼中,id 屬性為 red 的 p 元素顯示為紅色,而 id 屬性為 green 的 p 元素顯示為綠色。
<p id="red">這個段落是紅色。</p> <p id="green">這個段落是綠色。</p>注意:id 屬性只能在每個 HTML 文檔中出現一次。想知道原因嗎,請參閱 XHTML:網站重構。
id 選擇器和派生選擇器
在現代布局中,id 選擇器常常用于建立派生選擇器。
#sidebar p {font-style: italic;text-align: right;margin-top: 0.5em;}上面的樣式只會應用于出現在 id 是 sidebar 的元素內的段落。這個元素很可能是 div 或者是表格單元,盡管它也可能是一個表格或者其他塊級元素。它甚至可以是一個內聯元素,比如 <em></em> 或者 <span></span>,不過這樣的用法是非法的,因為不可以在內聯元素 <span> 中嵌入 <p>
一個選擇器,多種用法
即使被標注為 sidebar 的元素只能在文檔中出現一次,這個 id 選擇器作為派生選擇器也可以被使用很多次:
在這里,與頁面中的其他 p 元素明顯不同的是,sidebar 內的 p 元素得到了特殊的處理,同時,與頁面中其他所有 h2 元素明顯不同的是,sidebar 中的 h2 元素也得到了不同的特殊處理。
單獨的選擇器
id 選擇器即使不被用來創建派生選擇器,它也可以獨立發揮作用:
#sidebar {border: 1px dotted #000;padding: 10px;}根據這條規則,id 為 sidebar 的元素將擁有一個像素寬的黑色點狀邊框,同時其周圍會有 10 個像素寬的內邊距(padding,內部空白)。老版本的 Windows/IE 瀏覽器可能會忽略這條規則,除非你特別地定義這個選擇器所屬的元素:
div#sidebar {border: 1px dotted #000;padding: 10px;}class類選擇器
在 CSS 中,類選擇器以一個點號顯示:
.center {text-align: center}在上面的例子中,所有擁有 center 類的 HTML 元素均為居中。
在下面的 HTML 代碼中,h1 和 p 元素都有 center 類。這意味著兩者都將遵守 ".center" 選擇器中的規則。
<h1 class="center"> This heading will be center-aligned </h1><p class="center"> This paragraph will also be center-aligned. </p>注意:類名的第一個字符不能使用數字!它無法在 Mozilla 或 Firefox 中起作用。
和 id 一樣,class 也可被用作派生選擇器:
.fancy td {color: #f60;background: #666;}在上面這個例子中,類名為 fancy 的更大的元素內部的表格單元都會以灰色背景顯示橙色文字。(名為 fancy 的更大的元素可能是一個表格或者一個 div)
元素也可以基于它們的類而被選擇:
td.fancy {color: #f60;background: #666;}在上面的例子中,類名為 fancy 的表格單元將是帶有灰色背景的橙色。
<td class="fancy">你可以將類 fancy 分配給任何一個表格元素任意多的次數。那些以 fancy 標注的單元格都會是帶有灰色背景的橙色。那些沒有被分配名為 fancy 的類的單元格不會受這條規則的影響。還有一點值得注意,class 為 fancy 的段落也不會是帶有灰色背景的橙色,當然,任何其他被標注為 fancy 的元素也不會受這條規則的影響。這都是由于我們書寫這條規則的方式,這個效果被限制于被標注為 fancy 的表格單元(即使用 td 元素來選擇 fancy 類)。
總結
以上是生活随笔為你收集整理的6、CSS Id 和 Class类选择器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5、CSS 派生选择器
- 下一篇: 7、CSS 属性选择器