我知道伪类必须为了不相互冲突。(双“按顺序”意图)
问题是我读到 CSS 从右到左读取(在找到匹配项时),这让我对此表示怀疑:
a{
color:blue;
text-decoration:none;
}
a:hover,a:focus{
text-decoration:underline;
}
应该是a:focus,a:hover
还是像我现在拥有的那样好?
我知道伪类必须为了不相互冲突。(双“按顺序”意图)
问题是我读到 CSS 从右到左读取(在找到匹配项时),这让我对此表示怀疑:
a{
color:blue;
text-decoration:none;
}
a:hover,a:focus{
text-decoration:underline;
}
应该是a:focus,a:hover
还是像我现在拥有的那样好?
在这种情况下,这无关紧要,因为它们不能同时被触发......因为这:hover
是用鼠标触发:focus
的链接事件和用键盘触发的链接事件。
然而,读这个
:link 和 :visited 伪类通常应该放在第一位。接下来应该是 :focus 和 :hover——它们现在被指定,以便它们覆盖并应用于访问过和未访问过的链接。如果 :focus 在 :hover 之前,则悬停效果将应用于具有键盘输入焦点的链接。:active 伪类应该总是排在最后,因为我们通常希望清楚地指出任何已激活的链接。
从这里:http ://reference.sitepoint.com/css/pseudoclasses
在这种情况下,我认为理想的是
a:link{
}
a:visited{
}
a:focus, a:hover{
}
a:active{
}