14

根据W3 Schools的说法,声明锚元素上的伪类的顺序至关重要。

为什么是这样?还有其他人吗?

4

1 回答 1

19

这里有详细的说明:

http://meyerweb.com/eric/css/link-specificity.html

它与 CSS 的特殊性有关。
从那里引用:

所有这些都可以应用于超链接,并且在某些情况下,可以应用多个。例如,未访问的链接可以在悬停和活动的同时作为未访问的链接。由于上述三个规则适用于超链接,并且选择器都具有相同的特异性,因此列出的最后一个获胜。因此,“活动”样式永远不会出现,因为它总是会被“悬停”样式覆盖。现在考虑一个已经被访问过的超链接。它将永远是紫色的,因为它的“已访问”样式优于任何其他状态,包括“活动”和“悬停”。
 
这就是为什么 CSS1 中推荐的顺序是这样的:

A:link
A:visited
A:悬停
A:active

BTW W3 Schools 不是正式定义的最佳资源。你最好去源头,在w3c。例如,它不是“非常重要”,但建议使用。

于 2013-06-07T23:37:27.543 回答