我正在使用以下伪类:
a.recentposttitle:link,a.recentposttitle:visited {color:#000;}
a.recentposttitle:hover {color:#56A49F;}
a.recentposttitle:active {color:#000;}
我是否需要明确或是否有更压缩的方式来获得相同的结果?
答案 0 :(得分:1)
不,没有速记。但您的选择器可以是:
a {}
选择所有links
或:
.recentposttitle {}
获取所有.recentposttitle
元素(我们知道它们已经是链接)。
另外,:link
不是真的需要,你可以写:
a {}
a:visited {}
a:hover {}
a:active {}
当您编写a {}
时,您将为所有可能的情况设置声明,因此:
a {}
与:
相同a:link, a:visited, a:hover, a:active {}
pseudo classes
的顺序是重要的:
答案 1 :(得分:0)
CSS中没有用于锚类/链接的伪类的速记选择器。所以你所拥有的就像你能得到的一样简洁。
a:link{ Declarations }
a:visited{ Declarations }
...
a:hover{ Declarations }
a:active{ Declarations }
答案 2 :(得分:0)
我需要找到我之前读过的参考来确认这一点,但是AFAIK,:link
伪选择器只有在使用旧式页面锚点(<a name="..."></a>
)时才需要,所以你应该能够安全地消除它。由于您的:active
和:visited
规则相同,因此您可以减少对此的展示:
a.recentposttitle:active, a.recentposttitle:visited {color:#000;}
a.recentposttitle:hover {color:#56A49F;}
但是你并没有真正节省那么多字节,所以很难说它是否值得。
答案 3 :(得分:0)
您可以使用CSS LESS
或SASS
等框架来压缩它。
与您的示例相似,
CSS:
a.recentposttitle:link,a.recentposttitle:visited {color:#000;}
a.recentposttitle:hover {color:#56A49F;}
a.recentposttitle:active {color:#000;}
例如,如果您使用 SASS ,则可以将其压缩为..
a.recentposttitle {
color: #000;
&:link{ color: #000; }
&:hover { color: #56A49F; }
&:visited { color: #000; }
&:active{ color: #000; }
}
您还可以使用Emmet
(以前称为Zen coding
)进行最大代码压缩。
希望这有帮助。