background-image:for:访问过的链接?

use*_*249 6 css css-selectors

是否可以将background-image:属性添加到访问过的链接?

 a.coolLinks:visited{
     background-image:url("http://www.ledr.com/colours/black.jpg");
}
Run Code Online (Sandbox Code Playgroud)

谢谢

编辑:所以看来这是一个安全漏洞,这就是为什么它无法完成.没有迹象表明浏览器阻止了这种css风格.

Kat*_*ieK 13

根据大多数规范,您的代码是正确的.但是,许多浏览器认为访问链接上的背景图像可能会侵犯用户的隐私,因此他们不允许这样做.

观察这个例子:

<p><a href="/unvisited">Unvisited link</a></p>

<p><a href="http://jsfiddle.net/">Visited Link</a></p>

<style>
a {
  background:red url("http://placekitten.com/100/101?image=2") center center no-repeat;
  display: block;
  height: 200px;
  width: 200px;
  overflow: hidden;
  text-align: center;
  background-color: red;
}

a:visited {
  background:blue url("http://placekitten.com/100/100?image=1") center center no-repeat;
}
</style>
Run Code Online (Sandbox Code Playgroud)

(也在http://jsfiddle.net/Yq5GY/1/).Firefox忽略了访问过的链接的背景图像声明,并且从不显示独奏小猫.您可以使用背景颜色进行区分.无论如何,单独依赖图像是不好的可用性.

  • [参考文献](http://stackoverflow.com/questions/3788855/google-chrome-avisited-background-image-not-working) (5认同)
  • @KatieK你有什么参考资料,为什么浏览器会认为这是侵犯隐私?我想不出为什么会这样. (2认同)
  • 唉唉.这解释了很多.有趣的是W3Schools的例子如何使用背景颜色:w3schools.com/cssref/sel_visited.asp(猜猜这就是为什么他们在这里如此诽谤) (2认同)