我有什么意思
#A .B,
#A .C { some styles }
这是否意味着B类没有样式定义?
答案 0 :(得分:4)
这意味着#A .B
和#A .C
共享相同的声明块。
逗号表示将该块中的声明应用于这两个选择器,而逗号后的换行并不意味着什么特别之处;它只是用于提高样式表可读性的纯空格。
答案 1 :(得分:2)
这叫做selector grouping。这是一个捷径:
A .B {some definitions}
A .C {some definitions}
答案 2 :(得分:2)
#A .B, #A .C {some definitions}
让我们分别剖析每个选择器:
首先,逗号用于分隔多个选择器;而不是为每个选择器编写相同的样式规则(例如:一次用于 #A .B ,再次用于 #A .C ),您可以将选择器合并在一起。这意味着将在 #A .B 和 #A .C 规则上强制执行样式定义。
如果您也想知道,我们还要解析 #A .B 选择器:
各个选择器之间的间距(在这种情况下,在 #A 和 .B 之间)表示后代关系,其中 #A 是祖先和 .B 是后代。 #符号用于表示元素ID,其中。符号用于重复元素的类。这意味着上面的选择器定义用于查找具有类 B 的所有元素,该类是具有ID A 的元素的后代(不一定是直接)。
从更大的角度来看,由于逗号用于将两个选择器集合在一起,因此完整的选择器定义将是:包含类 B 或 C 的所有元素这也是ID A 的元素的后代。
注意:如果ID A 的元素还包含 B 或 C 类,则不会对其强制执行样式定义,因为它必须包含两个元素之间的后代关系(为此,您需要选择器定义 #AB 或 #AC )。
希望这有帮助。
答案 3 :(得分:1)
这意味着相同的定义适用于 - 匹配B类和C类的DOM元素。