千家信息网

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

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍了怎么在CSS中使用visited伪类选择器的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在CSS中使用visited伪类选择器文章都会有所收获,下面
千家信息网最后更新 2025年02月01日怎么在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安全错误 数据库的锁怎样保障安全 网络技术员 出路 江门网络安全公司 上海富赢网络技术有限公司 构筑网络安全生产共同体 如何预防网络安全攻击 如何查看数据库的存储量 杭州rpa软件开发公司 齐齐哈尔栏悠网络技术有限公司 在家里怎么连接sap服务器 连接到基础数据库失败 执行数据库可以激活触发器的 学网络安全不知道学什么 彻底删除数据库 软件开发项目组织结构 怎么样用命令创建数据库 网络安全意识学习简报 电子阅读器用于软件开发查资料 火影忍者手游服务器卡顿的原因 宽带网络技术参数 系统时间同步服务器地址 猎人竞技场ps4服务器选择 漂亮的网络安全手抄报视频 数据库系统概论第五版难吗 网络安全伴我行手抄报 内容 配置服务器文件夹权限管理 广西网络技术转让案例 网络技术及应用摘要 计算机网络技术人员素质要求 剑桥科学文摘网络数据库 数据库第一是什么意思
0