CSS為一些特殊效果準備了特定的工具,我們稱之為“偽類”。其中有幾項是我們經常用到的,下面我們就詳細介紹一下經常用於定義連結樣式的四個偽類,它們分別是:
:link
:visited
:hover
:active
因為我們要定義連結樣式,所以其中必不可少的就是超級連結中的錨標籤--a,錨標籤和偽類連結起來書寫的方法就是定義連結樣式的基礎方法,它們的寫法如下:
a:link,定義正常連結的樣式;
a:visited,定義已訪問過連結的樣式;
a:hover,定義滑鼠懸浮在連結上時的樣式;
a:active,定義滑鼠點選連結時的樣式。
樣本:
a:link {
color:#FF0000;
text-decoration:underline;
}
a:visited {
color:#00FF00;
text-decoration:none;
}
a:hover {
color:#000000;
text-decoration:none;
}
a:active {
color:#FFFFFF;
text-decoration:none;
}
上面樣本中定義的連結顏色是紅色,訪問過後的連結是綠色,滑鼠懸浮在連結上時是黑色,點擊時的顏色是白色。
如果正常連結和已訪問過的連結樣式相同,滑鼠懸浮和點擊時的樣式相同,也可以將它們合并起來定義:
a:link,
a:visited {
color:#FF0000;
text-decoration:underline;
}
a:hover,
a:active {
color:#000000;
text-decoration:none;
}
連結定義的順序
沒有規矩不成方圓,雖然連結定義寫好了,但它也是有規則的,如果這四項的書寫順序稍有差錯,連結的效果可能就沒有了,所以每次定義連結樣式時務必確認定義的順序,link--visited--hover-active,也就是我們常說到的LoVe HAte原則(大寫字母就是它們的首字母)。
定義局部連結樣式
在CSS中寫上a:link{}這樣的定義會使整個頁面的連結樣式改變,但有些局部連結需要特殊化,這個問題也不難解決,只要在連結樣式定義的前面加上指定的id或class就可以了。
樣本:
#sidebar a:link,
#sidebar a:visiteid {
color:#FF0000;
text-decoration:none;
}
#sidebar a:hover,
#sidebar a:active {
color:#000000;
text-decoration:underline;
}
調用方法:
<div id="sidebar"><a href="aa.aspx" target="_blank">連結到aa頁面<a></div>
class的定義方法和id相同,只要將#sidebar改為.sidebar就行了,還有一種方法是直接定義連結的樣式,那樣更直接,不過調用時比較麻煩,需要給每個特定的連結加上定義的代碼。
樣本:
a.redlink a:link,
a.redlink a:visiteid {
color:#FF0000;
text-decoration:none;
}
a.redlink a:hover,
a.redlink a:active {
color:#000000;
text-decoration:underline;
background:#FFFFFF;
}
調用方法:
<div><a href="bb.aspx" target="_blank" class="redlink" >連結bb頁面<a></div>