取消a:visit vs a:link的背景值

时间:2013-08-21 12:46:53

标签: html css background hyperlink visited

我只是浪费了一个下午,弄清楚CSS中的a:visited选择器除了少数几个与颜色直接相关的属性外,还禁用了所有属性(参见此处:http://www.impressivewebs.com/styling-visited-links/)。

无论如何,我想知道是否可以取消设置a:link的属性集?我有一个a:link选择器,用CSS渐变填充背景,但如果a:visited的颜色变为灰色,那就太好了。

根据新的实现,您可以为background-color设置a:visited,但不幸的是,background的{​​{1}}属性会覆盖a:link,因为a:visited可以现在不使用background

我想做的是a:visited的未设置背景,以便使用background-color。有谁知道这是否可行?

3 个答案:

答案 0 :(得分:0)

使用a代替:link作为背景颜色

请参阅小提琴here

a{
    background: green;
}
a:visited{
    background: orange;
}

答案 1 :(得分:0)

为超链接提供内联块显示样式

a{
  display: inline-block;
  background-color: red; 
  //this becomes the default bgcolor; override it in subsequent pseudo state styles
}

这允许您为超链接指定背景颜色。

您必须按以下顺序指定超链接的样式

  • a:链接 - 正常的,未访问过的链接
  • a:已访问 - 用户访问过的链接
  • a:悬停 - 当用户将鼠标悬停在
  • 上时的链接
  • a:有效 - 点击该链接时的链接

按此顺序,访问过的链接样式会覆盖正常的链接样式。因此,单击链接后将应用您访问过的css。

答案 2 :(得分:0)

确保在a:visited之后声明a 。否则a将否决它。

a {
   background: #ff0000;
}
a:visited {
   background: url( none );
}