有什么理由说这不适用于Internet Explorer或Chrome:
<html>
<head>
<style>
A {font-weight: bold; color:black;}
A:visited {font-weight: normal; color: black; }
.Empty {font-weight: bold; color: black; }
</style>
</head>
<body>
<a href="http://mysite">click me</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我点击的链接永远不会正常,只是保持粗体.在其他一些浏览器上它可以运行
编辑:更改案例不会影响它.
编辑:将a更改为:链接不会影响它.
编辑:改变颜色工作,而不是字体重量.
编辑:解决方法是更改辅助功能以忽略Web颜色.我没有访问源,所以我必须这样做.
该W3.org CSS规范规定如下(重点煤矿):
- :link伪类适用于尚未访问过的链接.
- :一旦用户访问了链接,就会应用:visited伪类.
这两个州是相互排斥的.
这意味着应用于:link选择器的任何样式应仅应用于未访问的链接.然而,唯一的属性似乎是这样color.将字体大小,背景等应用于:link选择器会定位所有链接.
页面下方还有一条说明:
注意.样式表作者可能滥用:link和:visited伪类来确定用户未经用户同意访问过哪些网站.
因此,UA可以将所有链接视为未访问的链接,或者实现其他措施以保持用户的隐私,同时以不同方式呈现访问和未访问的链接.
但是,据我所知,这仅适用于Javascript返回的样式,而不适用于样式本身的显示.
这是一个JS小提琴,显示了这个问题.这些浏览器是否偏离规范,或者是否存在我遗漏的内容?