CSS状态选择器有快捷方式吗?

时间:2014-07-10 20:25:00

标签: css css-selectors

例如,是否有更紧凑的写作方式?

.behind a.delete-btn, 
.behind a.delete-btn:active, 
.behind a.delete-btn:visited, 
.behind a.delete-btn:focus, 
.behind a.delete-btn:hover {
    color: white;
    background-color: red;
    text-shadow: none;
}

1 个答案:

答案 0 :(得分:2)

目前还没有这种快捷语法。

选择器4将提供基本上提供此快捷语法的:matches()伪类,但唯一的实现以前缀:any()的形式存在,这些实现是为内部使用和测试目的而保留的。另外,由于解析规则trying to use :any() in its prefixed state would require repeating everything anyway,因此您最好等到浏览器开始实施标准化:matches()之后。

同时,如果您尝试覆盖所有州的a元素上的现有样式,并且.behind a.delete-btn本身不够具体,则可以通过将其中一个类加倍来作弊(因为类选择器和伪类具有相同的特异性):

.behind a.delete-btn.delete-btn {
    color: white;
    background-color: red;
    text-shadow: none;
}

如果这对你来说过于苛刻,那么除了像你一样再次指定所有状态伪类之外别无他法。