为啥我访问的链接没有背景颜色?

Posted

技术标签:

【中文标题】为啥我访问的链接没有背景颜色?【英文标题】:Why won't my visited link have a background color?为什么我访问的链接没有背景颜色? 【发布时间】:2011-08-18 20:54:08 【问题描述】:

似乎 a:visited 无法在我的链接上显示背景颜色。

http://jsfiddle.net/davestein/D2srA/

我错过了什么超级简单的东西?

【问题讨论】:

有趣。边框也不起作用 【参考方案1】:

a:visited 上的背景颜色似乎只有在普通的a 具有背景颜色(明确定义或通过继承(直接父级)必须实际上有一个背景颜色才能做到这一点)。

显然,必须始终为a 定义背景颜色并不理想,因为该站点可能有背景图像。

CSS 错误..?

【讨论】:

找到了这个未回答的老问题。这不是 CSS 错误,但如果您只考虑 CSS,它就足够接近了。我认为这是一个浏览器安全问题,因此 JS 无法轻易撕下访问过的链接颜色以跟踪用户的去向。【参考方案2】:

尝试 a) 设置默认背景颜色(如 #fff)和 b) 删除 !important,如下所示:

http://jsfiddle.net/D2srA/10/

【讨论】:

我们刚刚注意到,正如您评论的那样 - 想知道我的修订版是如何达到 12 的。jsfiddle.net/davestein/D2srA/12您知道它为什么会这样吗? 成功的答案是这样的:jsfiddle.net/davestein/D2srA/31 使用inherit 可以解决透明不被覆盖的问题。我们如何在回答问题上获得团队合作的联合分数? :) 废话,继承不起作用 - 因为小提琴的背景色是白色,所以它起作用了。为什么上帝为什么,我需要定义一些任意颜色吗? 白色不好吗?透明呢? 透明是我开始的地方,但它不起作用。它不适用于 FF、Chrome 或 Safari。它适用于 Opera 和 IE。我们生活在一个多么落后的世界。【参考方案3】:

我不确定这里的技术原因,但这似乎只适用于我为 a 添加背景颜色:

一个 背景颜色:#ffffff;

a:访问过 背景颜色:#ff0000;

【讨论】:

【参考方案4】:

如果我像你那样做,它对我不起作用。但是,如果我添加每个伪类,它就可以工作。例如:

a:link color:#FF0000; /* 未访问的链接 */ a:visited color:#00FF00; /* 访问过的链接 */ 一个:悬停颜色:#FF00FF; background-color:black; /* 鼠标悬停在链接上 */ a:active color:#0000FF; /* 选中的链接 */

【讨论】:

【参考方案5】:

!important 永远都是卡车

a:active color:#0000FF !important;
a:visited color:#0000FF !important;

【讨论】:

以上是关于为啥我访问的链接没有背景颜色?的主要内容,如果未能解决你的问题,请参考以下文章

为啥网页的背景颜色都没有了

我在外层div里面已经设置了背景颜色为白色,为啥里面的div撑开后,ie8显示的时候背景颜色没有了!

为啥 UIViews 背景颜色没有更新?

为啥会限制您同时使用背景图像和背景颜色? [复制]

为啥自定义 UIRefreshControl 类的背景颜色在 Swift 中没有改变?

DIV+CSS中复选框的背景颜色不显示,但是边框显示,为啥?