:link设置未访问链接样式,:visited设置已访问链接外观,两者结合可提升导航体验;需遵循LVHA顺序避免覆盖,并注意浏览器对:visited的属性限制。

css中的:link和:visited伪类用于分别控制未访问和已访问链接的样式。通过这两个伪类,可以为网页中的超链接提供更清晰的视觉反馈,提升用户体验。
理解:link与:visited的基本作用
:link用于设置尚未被用户点击过的链接样式,仅对带有href属性的标签生效。:visited则用于设置用户已经点击访问过的链接外观。
常见应用场景包括改变链接的颜色、下划线或字体粗细,帮助用户区分哪些页面已经浏览过。
基本语法与使用示例
在CSS中,直接将伪类附加在链接选择器后即可:
立即学习“前端免费学习笔记(深入)”;
a:link { color: blue; text-decoration: underline; } a:visited { color: purple; }
上面代码会让所有未访问链接显示为蓝色,访问过的变为紫色。这是浏览器默认样式的常见实现方式。
注意LVHA顺序原则
为了确保样式正确应用,推荐遵循“LVHA”顺序(Link → Visited → Hover → Active)定义链接状态:
a:link { color: blue; } a:visited { color: purple; } a:hover { color: red; } a:active { color: orange; }
如果把:visited写在:link前面,可能导致未访问链接也被应用visited样式,造成显示异常。
浏览器限制与安全考虑
出于隐私保护,现代浏览器限制了:visited伪类可修改的CSS属性。例如不能通过javaScript探测visited链接的样式变化,也不能使用某些可能泄露历史记录的属性(如background-image)。
目前允许设置的主要属性包括color、background-color、border-color等基础外观属性。
基本上就这些。合理使用:link和:visited能让网站导航更友好,只要注意书写顺序和浏览器限制即可。


