僞類用於向某些選擇器添加特殊的效果。
錨僞類
a:link {color: #FF0000} /* 未訪問的鏈接 */
a:visited {color: #00FF00} /* 已訪問的鏈接 */
a:hover {color: #FF00FF} /* 鼠標移動到鏈接上 */
a:active {color: #0000FF} /* 選定的鏈接 */
以前學JavaScript認爲這是一個事件。在CSS定義中,a:hover 必須被置於 a:link 和 a:visited 之後,a:active 必須被置於 a:hover 之後,纔是有效的(難得碰見有順序的,這是什麼原因呢?)。僞類名稱對大小寫不敏感
a.red : visited {color: #FF0000}
<a class="red" href="css_syntax.asp">CSS Syntax</a>
僞類可以與CSS類配合使用,這裏被訪問的連接就會顯示成紅色。:first-child僞類
<div>
<p>These are the necessary steps:</p>
<ul>
<li>Intert Key</li>
<li>Turn key <strong>clockwise</strong></li>
<li>Push accelerator</li>
</ul>
<p>Do <em>not</em> push the brake at the same time as the accelerator.</p>
</div>
:first-child 僞類來選擇元素的第一個子元素,這裏給定以下規則:p:first-child {font-weight: bold;}
li:first-child {text-transform:uppercase;}
那麼哪些元素會與之匹配呢?首先<div>元素的第一個元素就是<p>,它會被匹配上的。意思就是說,這個冒號,表示的自己是一個子元素,而在這個父元素下的所有同名元素中時第一個。接下來,那麼Intert Key就會被標記,全部變成大寫了。其餘的就不會變了。最常見的錯誤是認爲 p:first-child 之類的選擇器會選擇
p 元素的第一個子元素。
p > i:first-child {
font-weight:bold;
}
僞類與子元素選擇器結合。代碼表示<p>元素中的第一個<i>元素會被加粗。
p:first-child i {
color:blue;
僞類與後代選擇器結合。該代碼表示的是第一個子元素<p>裏的所有<i>標籤都會被改變顏色。:lang僞類。向帶有指定 lang 屬性的元素添加樣式。
q:lang(no)
{
quotes: "~" "~"
}
這樣在有lang屬性的<q>標籤裏的內容兩邊就會出現兩個~號。:focus 僞類。在元素獲得焦點時向元素添加特殊的樣式。
a:link {color: #FF0000} /* 未訪問的鏈接 */
a:focus {color: #00FF00} /* 獲得焦點的鏈接 */
用在文本框裏或者是按鈕上應該效果好一些。