:link 设置未访问链接样式,:visited 设置已访问链接样式,两者互斥,用于区分链接状态。示例中 :link 设蓝色带下划线,:visited 设紫色;因隐私限制,:visited 可设样式受限,建议按 LVHA 顺序书写伪类以避免覆盖。

:link 和 :visited 是 CSS 中用于设置超链接不同状态样式的两个伪类。它们都作用于 标签,但针对的是链接的不同访问状态,合理使用可以提升用户体验和界面可读性。
1. :link 伪类:未被访问的链接
:link 用于选择所有尚未被用户点击访问过的超链接。
- 仅对带有 href 属性的 标签生效
- 一旦用户点击并访问过该链接,:link 样式将不再适用
- 常用于定义新链接的默认颜色、下划线等样式
示例:
a:link {
color: blue;
text-decoration: underline;
}
2. :visited 伪类:已被访问的链接
:visited 用于选择用户曾经访问过的链接。
立即学习“前端免费学习笔记(深入)”;
- 只有在浏览器历史记录中存在该 URL 的访问痕迹时才会匹配
- 帮助用户识别哪些页面已经查看过,避免重复点击
- 出于隐私保护限制,现代浏览器对 :visited 可设置的样式有所约束
示例:
a:visited {
color: purple;
}
3. 主要区别总结
- 状态不同::link 表示未访问,:visited 表示已访问
- 互斥关系:同一个链接不能同时处于 :link 和 :visited 状态
- 样式限制::visited 允许修改的颜色属性(如 color、background-color)受限,无法读取实际颜色值防止信息泄露
- 顺序建议:通常将 :link 写在 :visited 前面,避免样式覆盖问题(遵循 LVHA 顺序::link → :visited → :hover → :active)
基本上就这些。正确使用这两个伪类,能让网页导航更清晰,也符合用户的浏览习惯。










