当前位置: 首页 > 面试题库 >

CSS类重复以提高特异性

太叔逸春
2023-03-14
问题内容

根据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具体规定:(粗体雷) 注意:允许重复出现同一 简单选择器 ,并且确实会增加特异性。 因此,例如,具有两倍的特异性比- DEMO 但是,对于“ 简单选择器 ” 一词,规格说明如下:(粗体字) 简单选择器可以是 类型选择 器,也可以是通用选择器,紧随其后的是零个或多个属性选择器,ID选择器或伪类(以任何顺序)。 因此,由于规范说允许重复出现相同的 简单选择器 -这意味着

  • 我是CSS网格主题的新手,我在网格的帮助下为一个网站创建了一个标题,我创建了带有徽标的标题、导航栏、搜索栏、带有网格的按钮 现在,最后两个属性对齐项目和对齐项目适用于所有ie,用于徽标、导航栏、搜索栏和按钮。我的问题是:我想覆盖这个justify items:center属性,以便仅对navBar的items:flex start进行对齐。那么谁能帮我? 以下是标题的屏幕截图:

  • 问题内容: 查看CSS特异性规范,没有提到该规则值得多少“要点” 。 一个人何时超越另一个人?如果一个在另一个之后被声明会怎样?哪个规则更重要?有某种模式吗? 从它的外观看,适用于具有更多特异性点的对象。但是,如果我声明一个bazillion id与类堆叠在一起并深深嵌套的话,会发生什么?它会否覆盖另一个未指定的标有的规则中设置的规则? 问题答案: CSS中的特异性仅涉及选择器,而不涉及它们的关联

  • 问题内容: 这是一次冒险。我从上一个问题中的循环重复查询开始,但是每个循环将遍历所有 1700万条记录 , 这意味着将花费数周的时间 (使用MSSQL 2005,运行服务器需要4:30分钟)。我从这个站点和这个帖子中闪现了信息。 并已经到达下面的查询。问题是,对于任何类型的性能,这是否是对1700万条记录运行的正确查询类型?如果不是,那是什么? SQL查询: 问题答案: 看到QueryPlan会有

  • 问题内容: 我希望我的容器div获得其子代高度的最大值。不知道孩子的身高。我正在尝试使用JSFiddle。容器为红色。没有出现。为什么? 问题答案: 添加以下属性: 这将迫使容器尊重其中所有元素的高度,而不考虑浮动元素。 更新 最近,我正在一个需要此技巧但需要允许溢出显示的项目中工作,因此,您可以使用伪元素清除浮动,从而有效地实现相同的效果,同时允许所有元素上的溢出。

  • Rust 的类型系统有一些我们曾经提到但没有讨论过的功能。首先我们从一个关于为什么 newtype 与类型一样有用的更宽泛的讨论开始。接着会转向类型别名(type aliases),一个类似于 newtype 但有着稍微不同的语义的功能。我们还会讨论 ! 类型和动态大小类型。 这一部分假设你已经阅读了 “高级 trait” 部分的 newtype 模式相关内容。 newtype 模式可以用于一些其