Joh*_*lor 11 css google-chrome background-image visited
(在我开始之前我应该说是的,我已经完成了所有的愚蠢检查,是的,链接在我的历史中并且已被访问过等)
我使用的是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.
cor*_*cho 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
我认为只有可能的解决方案是创造性地使用背景颜色而不是图像.