链接被访问之前选中
a:link{
color: red;
}
链接被访问之后选中
a:visited{
color: black;
}
鼠标悬停被选中
a:hover{
color: green;
}
链接被按下之后
a:active{
color: yellow;
}
由于样式的叠加特性和用户的操作先后顺序影响,
以上四个伪类选择器在书写时尽量按照
link vistied hover active的顺序来书写
首先伪类的特殊性(应用优先级)是同样的,所以后出现的伪类会覆盖先出现的伪类(同时激活)
规则是由于CSS特殊性导致,css特殊性有一个按顺序的规则(同一条css规则,后出现会覆盖前面的同样规则) 在这里,比如把hover放在active后面,那么实际你在激活(active)链接的时候就触发了hover伪类,hover在后面覆盖了active的颜色,所以始终无法看到active的颜色 如果把visited放在hover的后面,那么已经访问过的链接始终触发visited伪类,根据第一条会覆盖hover里面的颜色。
其实 link visited 这两个伪类,并不需要顺序关系。(他们两的位置可以交换)