如何同时选择给定元素及其所有子元素?

rsk*_*k82 3 css css-selectors

好的,我知道如何分别做这两件事:

#elemID {  } /* selects only one element */
#elemID * {  } /* selects all its children elements but not the element itself */
Run Code Online (Sandbox Code Playgroud)

我知道我可以这样做:

#elemID, #elemID * { }
Run Code Online (Sandbox Code Playgroud)

但有没有办法避免这种重复?

Bol*_*ock 8

不,没有什么比这短.

请注意,如果你真的只希望所有的孩子们#elemID,而不是所有的后代,你需要使用子组合子:

#elemID, #elemID > *
Run Code Online (Sandbox Code Playgroud)

正如ŠimeVidas所评论的那样color,默认情况下,某些属性会自动由后代元素继承.如果您尝试提供文本颜色#elemID,则不需要显式地并递归地应用它内部的元素.有关详细信息,请参阅CSS中继承的SitePoint参考.