CSS类重复以提高特异性
根据CSS文档:
特异性是由选择器中的属性和伪类的数量定义的。
因此,我的问题是,是否可以通过一遍又一遍地重复相同的类名来提高特异性?
例如:
将
.qtxt.qtxt.qtxt.qtxt.qtxt{
}
具有更高的特异性
.qtxt.lalgn{
}
要么
.lalgn .qtxt//(space added to create child selector){
}
?
回答:
是的,有可能并且有意这样做。尽管CSS2规范中未提及,但Selectors3规范中明确提及:
允许同一简单选择器重复出现 [sic] ,并且确实增加了特异性。
因此,浏览器在遇到重复的简单选择器时 必须 提高特异性,只要选择器有效且适用即可。这不仅适用于重复的类,而且适用于重复的ID,属性和伪类。
给定您的代码,.qtxt.qtxt.qtxt.qtxt.qtxt
将具有最高的特异性。其他两个选择器是同样特定的。组合器完全不影响特异性计算:
/* 5 classes -> specificity = 0-5-0 */.qtxt.qtxt.qtxt.qtxt.qtxt
/* 2 classes -> specificity = 0-2-0 */
.qtxt.lalgn
/* 2 classes -> specificity = 0-2-0 */
.lalgn .qtxt
同样,最后一个选择器中的空间是 后代 组合器。该 子 组合子是>
。
以上是 CSS类重复以提高特异性 的全部内容, 来源链接: utcz.com/qa/397977.html