" font-weight:normal"不工作?

时间:2015-09-06 09:37:45

标签: html css

我尝试设置一些链接,如果以前没有访问它们会显示为粗体,如果以前访问过它们就会显示为正常。

HTML:

<a href="http://www.facebook.com/" target="_blank">Facebook</a><br>

<a href="http://stackoverflow.com/questions/6962541/how-do-i-define-font-weight-in-css?lq=1" target="_blank">A Random StackOverflow Question</a> 

CSS:

a {
    font-weight: bold;
    text-decoration: none;
    color: #373837;
    font-size: 16px;
}
a:visited {
    font-weight: normal;
}
a:hover {
    text-decoration :underline; 
}

Fiddle

出于某种原因,无论之前是否访问过该链接,它们都显示为粗体。

我也尝试过修改CSS:

a {
    text-decoration: none;
    color: #373837;
    font-size: 16px;
}
a:visited {
    font-weight: normal;
}
a:link {
    font-weight: bold;   
}
a:hover {
    text-decoration :underline; 
}

Fiddle。它仍然无法运作。

知道如何解决这个问题吗?

(我正在使用Chrome btw)

3 个答案:

答案 0 :(得分:2)

原因是:visited伪选择器不允许所有属性。请参阅MDN

您可以使用其他attirubtes,例如color: green

答案 1 :(得分:0)

这似乎是浏览器的限制。 这似乎是浏览器的限制。 “多年来,CSS:被访者选择器一直是查询用户历史的载体。它本身并不特别危险,但是当它与JavaScript中的getComputedStyle()结合使用时,意味着有人可以浏览你的历史并找出你的位置'去过。 ” read about it here

答案 2 :(得分:0)

这不是font-weight: normal不起作用的浏览器。

因为如果你在悬停属性上添加font-weight: normal它会起作用。

查看this answer