选择器的部分和部分的正确术语和单词

Dag*_*bit 10 css terminology css-selectors

用逗号分隔的CSS选择器部分的正确术语是什么?

    body.foo .login , body.bar .login { ... }
/*                  |
           Part 1   |  Part 2         */
Run Code Online (Sandbox Code Playgroud)

在这些部分,什么是部分术语通过组合子分隔(空格,+,>,等)?

    body.foo .login , ... { ... }
/*          |
   Part 1   |   Part 2    */
Run Code Online (Sandbox Code Playgroud)

Bol*_*ock 12

用逗号分隔的CSS选择器部分的正确术语是什么?

目前,这些只是简单的选择器,它真的不适合我.将来,它们将被更好地定义为复杂的选择器.

整个以逗号分隔的列表称为选择器列表或组.

在这些部分,什么是部分术语通过组合子分隔(空格,+,>,等)?

目前,这些被称为简单选择器的序列.将来,它们将被称为复合选择器.

因此,选择器列表由一个或多个由逗号分隔的复杂选择器组成,每个复杂选择器由两个主要部分组成:复合选择器和组合器.它还可以选择包含伪元素.


既然我在这里,其余的定义......

选择器级别3总结如下:


选择器级别4重新定义了许多术语,因此使事情变得模糊不清并且不那么笨拙:

  • 一系列简单的选择器现在称为复合选择器.

  • 名称复合选择器现在被赋予"选择器"的CSS3定义(即,一串复合选择器和组合器).

  • 现在,一组一个或多个复合/复合选择器正式称为选择器列表.这个术语本身目前没有区分两者,我不认为这种情况很快就会发生变化.

    但是,如果您阅读某些功能伪类的语法,它将描述他们正在寻找的选择器列表类型.例如,增强型li伪类接受复合选择器列表,而原始版本仅允许一个简单选择器作为其参数.

  • 术语选择器已被概括,因此为了简单和简洁起见,现在可以引用以下任何一个:

    • 简单选择器
    • 复合选择器
    • 复杂选择器
    • 选择列表(例如样式规则的"选择器"组件)

一些个人笔记:

  • 术语"密钥选择器"由浏览器供应商创造,用于选择器实现,而不是官方术语.然而,它通常用于表示"选择器的主题",因为实现碰巧使用选择器的主题作为确定匹配的关键.

  • 术语"伪选择器"是由Web作者创造的,用于混合伪类和伪元素,并不是一个官方的,或者确实有意义的术语.虽然你可以在一些早期的W3C CSS2/3草案中找到它,但这可能是一个错误.请不要使用这个术语,因为它试图将两个完全不同的概念组合成一个总括性术语,从而不必要地产生混淆.

  • 伪元素(::pseudo-element)不是简单的选择器,因此不能出现在只能匹配实际元素的地方.但是,它们仍然被认为是用于CSS解析的选择器.

  • CSS中的典型样式规则(或规则集)由选择器声明块组成.

  • 命名空间前缀本身不是选择器,但它们可以应用于类型选择器,通用选择器和属性选择器,以匹配文档中(或不是)命名空间的组件.

  • 选择器的特异性目前仅指单个复杂选择器的特异性.匹配规则时,列表中与给定元素匹配的任何复杂选择器都将被考虑用于特异性计算.如果多个复杂选择器与元素匹配,则最具体的选择器将用于计算.

    对于一些4级选择器,特异性将是一个更复杂的问题,特别是:is():not().由于它们仍在被推测,尚未决定如何实施这些方法.