我正在研究一个想法,我的a:link有一个状态(蓝色,没有下划线等),a:hover为白色。我希望访问过的链接与a:link
和a:hover
具有相同的状态。这可能吗?在大多数常见浏览器中都支持吗?
答案 0 :(得分:15)
a, a:link, a:hover, a:visited, a:active {text-decoration: none; color: blue;}
应该适用于所有支持CSS的浏览器,尽管这是bad idea(当前离线,Google Cache)
要使a:hover
变为白色,请将其从上述规则中删除,并为其制定特殊规则或仅添加:
a:hover {color: white !important;}
答案 1 :(得分:11)
完全有可能像sblundy指出的那样。但是,如果您制定类似规则,那么用户将不再有任何视觉提示悬停在以前访问过的链接上。
另外,请记住按此顺序指定规则:
a:link { }
a:visited { }
a:hover { }
a:active { }
否则您可能会有意想不到的结果,因为所有这些规则都具有相同的特异性。订单很重要。
编辑:CSS2允许将伪类链接在一起。这可用于修复您的请求创建的[潜在]可用性问题。
a:visited:hover { }
但是,我不知道这种惯例是否得到广泛支持。
答案 2 :(得分:5)
这个助记符我被教导要记住将你的CSS链接放入哪个命令是“LoVe HAte”:链接,访问,悬停,活动。
坚持:专注于通常也不是一个坏主意。
当然,如果您通过使用逗号列出选择器来使链接的所有状态看起来相同,那么顺序无关紧要。
答案 3 :(得分:1)
以下是如何设置标签样式(正常和已访问)以及单独设置样式的方式。
a
{
color:#6c7492;
font-weight:bold;
text-decoration:none;
}
a:hover
{
border-bottom:1px solid #6c7492;
}
答案 4 :(得分:1)
如果您使用这些伪类,我不明白为什么不这样做。
a:visited, a:hover {
...
}