有时候,希望根据文档结构之外的其他条件对元素应用样式,例如表单元素或链接的状态。这要使用伪类选择器来完成。
/* makes all unvisited links blue */
a:link {color:blue;}
/* makes all visited links green */
a:visited {color: green;}
/* makes links red when hovered or activated */
a:hover, a:active {color:red;}
/* makes table rows red when hovered over */
tr:hover {background-color: red;}
/* makes input elements yellow when focus is applied */
input:focus {background-color:yellow;}
:link和:visited称为链接伪类,只能应用于锚元素。:hover、:active和:focus称为动态伪类,理论上可以应用于任何元素。不幸的是,只有少数现代浏览器(比如Firefox)支持这种功能。IE6和更低版本只注意应用于锚链接的:active和:hover选择器,完全忽略:focus。