千家信息网

怎么在CSS中使用visited伪类选择器

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要介绍了怎么在CSS中使用visited伪类选择器的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在CSS中使用visited伪类选择器文章都会有所收获,下面
千家信息网最后更新 2025年12月02日怎么在CSS中使用visited伪类选择器

这篇文章主要介绍了怎么在CSS中使用visited伪类选择器的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在CSS中使用visited伪类选择器文章都会有所收获,下面我们一起来看看吧。

首字母连起来是LVHA,顺序完全符合love-hate,也就是爱恨,所谓由爱生恨,这样顺序就记住了。

目前这个年代, :link 这个伪类用得已经不多了,但作用还是有的,我们平时用得比较多的都是直接设置 元素的颜色,例如:

a { color: blue; }

实际上,下面这种要更合适,更规范:

a:link { color: blue; }

两者有什么区别呢?

区别在下面,下面两个 元素,前者可以匹配 a:link 选择器,但后者却只能匹配 a 选择器:

文字文字2

例如我很喜欢移除 href 属性表示 元素按钮的禁用态,使用 a:link 禁用和非禁用的CSS就更好控制了。

只是我们使用 a:link 选择器的时候, a:visited 选择器也一定要设置(因为 a:link 在最前面),不然访问过的链接颜色就会跟着系统或者当前元素设置的 color 走,表现反而有些乱,因此,当下已经很少见到使用 :link 伪类选择器的了。

而 :visited 伪类选择器依然很有用,尤其在列表式链接站点,例如文章列表,章节列表,可以让用户知道这篇文章我已经看过了,算是比较友好的一种体验处理。

二、:visited伪类选择器支持CSS很有限

或许是出于安全考虑, :visited 伪类选择器支持CSS很有限,目前仅支持下面这些CSS: color , background-color , border-color , border-bottom-color , border-left-color , border-right-color , border-top-color , column-rule-color 以及 outline-color 。

同时,类似 ::before , ::after 这些伪元素都不支持,例如,我们希望使用文字标示已经访问过的链接,如下:

a:visited::after{content:'visited';} // 注意,不支持

不好意思,想法虽好,但没有任何浏览器支持,请死了这条心。

不过好在 :visited 伪类支持子选择器,不过,所能控制的CSS属性和 :visited 一模一样,就那几个和颜色相关的CSS属性,也不支持 ::before , ::after 这些伪元素。

例如:

a:visited span{color: red;}文字visited

如果链接是浏览器访问过的,则 元素文字颜色就会直红色,如下截图示意:

于是,我们就可以下面这种方法实现访问过的链接文字后面跟一个visited字样。HTML如下:

文字

CSS如下:

small { position: absolute; color: white; } // 这里设置color: transparent无效small::after { content: 'visited'; }a:visited small { color: purple; }

除了支持的CSS有限,:visited伪类选择器还有不少其他奇怪的特性。

三、没有半透明

使用 :visited 伪类选择器控制颜色的时候,虽然语法上支持半透明色,但是表现上,要么纯色,要么全透明。

例如:

a { color: blue; }a:visited { color: rgba(255,0,0,.5); }

结果不是半透明红色,而是纯红色,完全不透明。

四、只能重置,不能凭空设置

请问下面这段CSS,访问过的 元素会有背景色吗?

a { color: blue; }a:visited { color: red; background-color: gray; }

HTML为:

有背景色吗?

答案是不会有背景色,如下截图:

因为 :visited 伪类选择器中的色值只能重置,不能凭空设置。

我们修改成下面这样就可以了:

a { color: blue; background-color: white; }a:visited { color: red; background-color: gray; }

此时,文字效果如下截图:

也就是默认需要有一个背景色,这样 :visited 的时候才有有背景色呈现

五、:visited设置并呈现的色值无法获取

也就是说,当文字颜色值表现为 :visited 选择器设置的颜色值的时候,我们使用JS的getComputedStyle()是获取不到这个颜色值的。

已知CSS如下:

a { color: blue; }a:visited { color: red; }

并且我们的链接表现为红色,此时我们运行下面的JavaScript代码:

window.getComputedStyle(document.links[0]).color;

结果输出的是: "rgb(0, 0, 255)" ,也就是蓝色blue对应的RGB色值。

关于"怎么在CSS中使用visited伪类选择器"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"怎么在CSS中使用visited伪类选择器"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

选择 支持 文字 元素 颜色 链接 背景 也就是 时候 红色 属性 截图 有限 知识 篇文章 控制 内容 文章 浏览器 结果 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全教育家长应该怎么做 查询外部数据库用etl还是程序 金融科技互联网项目 我的世界非服务器怎么联机 关系型数据库oracle 2020年度网络安全资料整理 网络管理或网络安全 电脑拨打电话软件开发 aix 服务器进程状态查看 数据库无法打字 数据库打开方式的区别 软件开发专业知识深度 成都泥巴匠网络技术服务有限公司 数据库的基本关系具有哪些性质 服务器不支持分区 北京麻将软件开发哪家快 数据库节点什么意思 共享类软件开发 挖财网络技术有限公司待遇 区块链是否等同于分布式数据库 达梦数据库兼容mysql吗 网络安全知识竞赛决赛 数据库和离散数学的选修课程 lol服务器登不上去 襄樊数据库安全审计 富国科技互联网混合基金 西安一码通支付宝版服务器错误 东莞无限软件开发代理价格 山西鑫军其网络技术有限公司 区块链是否等同于分布式数据库
0