【问题标题】:background-color doesn't work on a:visited but it works if i add any background color to a {background:#fff}, Is it a bug?background-color 在 a:visited 上不起作用,但如果我向 {background:#fff} 添加任何背景颜色,它就可以工作,这是一个错误吗?
【发布时间】:2011-11-30 15:20:49
【问题描述】:

background-colora:visited 上不起作用,但如果我向a {background:#fff} 添加任何背景颜色,它就可以工作,这是一个错误吗?

a:visited 上查看此示例http://jsfiddle.net/jitendravyas/CMWWm/1/ 绿色背景 将不起作用。 但是

现在如果我在顶部添加a {background:#fff},那么a:visited 上的绿色背景将开始起作用。 http://jsfiddle.net/jitendravyas/D6vGX/1/

【问题讨论】:

  • 它工作正常(FF 3.6.22)。你了解:active伪选择器的作用吗?你能展示你的真实代码吗?
  • 使用 FF 6.0.6,不适合我,奇怪..
  • @Rob:不适用于 FF 7.0,但适用于 IE8。 @Jitendra:您只需在 a:link 上声明 background-color 即可解决。我很想知道答案...
  • 两个链接的例子都适用于 OS X Safari 5.1.5 (7534.55.3)

标签: html css w3c


【解决方案1】:

检查一下,Firefox 对 :visited 做了一些与隐私相关的更改,看起来很奇怪,

我们正在限制可用于设置访问样式的 CSS 属性 指向颜色、背景颜色、边框*颜色和轮廓颜色的链接 以及填充和描边属性的颜色部分。对于任何其他 已访问链接的部分样式,未访问链接的样式为 改为使用。

--来自Mozilla

http://hacks.mozilla.org/2010/03/privacy-related-changes-coming-to-css-vistited/

【讨论】:

  • 是的,但奇怪的是,如果我们为a:linka 添加背景颜色,它会起作用
【解决方案2】:

嗯,如果你添加 background-color: white 到你的 a:link 就可以了。

a:link {
    color: red;
    font-size: 3em;
    background-color: white;
}

我不确定这是否是一个错误或其他问题。

【讨论】:

  • 哦,是的,这是一个解决方案,但是如果我的身体上有黑色背景并且我不需要 background:white 上的 a:link,那就很奇怪了
  • @JitendraVyas 然后使用background-color: inherit。这也会让它发挥作用。
  • 那么它是不是这个hacks.mozilla.org/2010/03/…的hack ;-)
猜你喜欢
  • 2021-06-13
  • 1970-01-01
  • 2021-06-23
  • 2021-07-28
  • 2018-04-20
  • 2022-07-10
  • 2017-09-06
  • 1970-01-01
  • 2022-10-06
相关资源
最近更新 更多