CSS 语法/命名法

标签 css syntax nomenclature

我知道 CSS 是如何工作的,但我不确定如何调用“选择器”的每个组件。我搜索得越多,我就越困惑。每个站点都有不同的观点,或者他们只是将所有内容都称为相同的东西。

我们以下面的例子为例:

div#parent.class > div#child.class, div#otherId.class

各部分叫什么?

  1. 整件事

    div#parent.class > div#child.class, div#otherId.class

  2. 1的各部分(以逗号分隔)

    div#parent.class > div#child.classdiv#otherId.class

  3. 2 的每个部分(由组合符分隔,例如 >)

    div#parent.classdiv#child.classdiv#otherId.class

  4. 3的各部分

    div#parent.class 等。


人们往往对此不以为意,统统称之为“选择器”。但是选择器不能由选择器组成,选择器也由更小的选择器组成...

其他站点试图定义它们,但事情变得更加困惑:

  • 数字 1 被称为“选择器组”
  • 数字 2 作为“选择器”。如果您将 1 个称为“选择器组”,则有意义
  • 他们没有定义数字 3
  • 4 的每种类型都有其名称(例如 ID 选择器、类别选择器、属性选择器等)

没有约定/官方定义吗?我陷入了需要将它们存储在变量中的情况,但我不知道如何调用它们中的每一个...

最佳答案

Selectors 3 规范如您所愿。

3 称为 sequence of simple selectors

4 的统称是“简单选择器”。


但是Selectors 4 draft spec changes the terminology一点点。那里:

1 = "选择器列表"

2 = "复合选择器"

3 = "复合选择器"

4 = "简单选择器"

关于CSS 语法/命名法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43461182/

相关文章:

php - 如何以编程方式使用 PHP 增加 CSS ID

css - 添加了 jquery ui-autocomplete-loading 类,但样式不适用

haskell - 为什么 Haskell 强制数据构造函数的第一个字母大写?

rust - 变量绑定(bind)和变量之间的区别?

python - 在Python中测试文件名是否具有正确的命名约定

html - 输入元素的奇怪问题

javascript - onScroll 事件在 IE11 中没有被调用

java - 令人困惑的 Java 语法

c# - 在 C# 中使用 "->"?