(在我开始之前我应该说是的,我已经完成了所有的愚蠢检查,是的,这个链接在我的历史中并且已被访问过等)
我使用的是Chrome版本6.0.472.63,但重要的是它适用于所有浏览器。
适用于Firefox,IE和Opera。
基本上我所要做的就是在链接被访问后更改链接的背景图像。
我已经做了很多试验和错误测试,所以请耐心等待多个例子。
这就是我原来的
.forum_box .title a { background-image:url(../images/f_unread.png); background-position:10px center; background-repeat:no-repeat; background-color:transparent; color:#2D4054; font-size:14px; padding:10px 12px 10px 44px; text-decoration:none; display:block; font-weight:bold; } .forum_box .title a:visited { background-image:url(../images/f_read.png); }
适用于Chrome以外的所有浏览器。接下来我试着把它变成一种颜色而不是图像。
.forum_box .title a:visited { background-color:red; }
同样,我将链接更改为#fff而不是透明,访问链接变为红色,所以显然bg颜色只有在为父级设置bg颜色时才有效。
.forum_box .title a { background-image:url(../images/f_unread.png); background-position:10px center; background-repeat:no-repeat; background-color:#fff; color:#2D4054; font-size:14px; padding:10px 12px 10px 44px; text-decoration:none; display:block; font-weight:bold; } .forum_box .title a:visited { background-color:red; }
然而,它仍然无法解决我的图像问题。因此,在最后的一次尝试中,我尝试了这一点,希望Chrome出于某种原因,只有在两者都存在相同属性的情况下才能工作。
.forum_box .title a { background:#fff url(../images/f_unread.png) no-repeat 10px center; color:#2D4054; font-size:14px; padding:10px 12px 10px 44px; text-decoration:none; display:block; font-weight:bold; } .forum_box .title a:visited { background:#fff url(../images/f_read.png) no-repeat 10px center; }
这不起作用,并继续在Firefix,Opera和IE上工作。所以我来到Stack Overflow很困惑。
非常感谢任何帮助!
更新: 我尝试过jQuery解决方案,虽然它仍然无效。尽管有:访问链接,我可以通过将字体颜色更改为红色来确认其访问状态。 jQuery('a:visited')。length返回0。
答案 0 :(得分:14)
这里的问题相同。 改变一个CSS Sprite中的背景位置:访问在Firefox 3.6中适用于我,但在Chrome 6中不适用。
但可能很快就会停止在Firefox中工作。 (也许是FF 4?)
这是一个隐私问题,你可以在这里阅读一篇关于它的Mozilla文章(2010年3月)http://hacks.mozilla.org/2010/03/privacy-related-changes-coming-to-css-vistited/ 而且这个bug: https://bugzilla.mozilla.org/show_bug.cgi?id=147777#c160
我认为唯一可行的解决方案是创造性地使用背景色而不是图像。
答案 1 :(得分:3)
这可能是一个安全问题 检查mozilla安全博客上的post 我当然可以想象他们会怎么做。
答案 2 :(得分:3)
答案 3 :(得分:0)
你的img url周围可能需要你的单引号... 浏览器在关注报价时以及什么时候不关心时很有趣....
答案 4 :(得分:0)
之所以这样做是出于安全原因,因为可以加载许多不同的图像并检测用户访问过哪些链接,发送特定请求的任何属性或加载特定资源(取决于用户访问过的内容)从技术上讲,这是安全问题,因为它可能泄露用户的个人利益。
https://blog.jeremiahgrossman.com/2006/08/i-know-where-youve-been.html