如何递归地选择所有子元素?

div.dropdown, div.dropdown > * {
    color: red;
}

这个类只在定义的className和所有直接子类上抛出一个类。你如何以一种简单的方式,像这样选择所有的childnode:

div.dropdown, 
div.dropdown > *, 
div.dropdown > * > *, 
div.dropdown > * > * > *, 
div.dropdown > * > * > * > * {
    color: red;
}

使用空格来匹配元素的所有后代:

div.dropdown * {
    color: red;
}

X y匹配X内部的每一个元素y,无论它嵌套有多深——子代、子代等等。

星号*匹配任何元素。

官方规范:CSS 2.1:章节5.5:后代选择器


规则如下:

A B {
  /* B is descendant of A */
}
A > B {
  /* B is direct child of A */
}

So

div.dropdown *

而不是

div.dropdown > * 

后代选择符

子组合子——通常用一个空格(" ")字符-组合两个选择器,使元素匹配 如果第二个选择器有一个祖先(parent, 父级的父级,父级的父级的父级,等等)元素 第一个选择器。

详细信息{ margin-left: 48 px; } <详细> <摘要> > < /总结 A是字母表中的一个字母。 < / >详细信息 <详细信息公开> <摘要> B > < /总结 B是字母表中的一个字母。 <详细信息公开> <摘要> 1 > < /总结 1是一个数字。 <详细信息公开> <摘要> * > < /总结 *是一个字符。 < / >详细信息 < / >详细信息 <详细信息公开> <摘要> 2 > < /总结 2是一个数字。 < / >详细信息 < / >详细信息