web-dev-qa-db-fra.com

Sélectionner tous les éléments enfants de manière récursive en CSS

Comment pouvez-vous sélectionner tous les éléments enfants de manière récursive?

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

Cette classe lève uniquement une classe sur le className défini et tous les enfants immédiats. Comment pouvez-vous, de manière simple, choisir tous les childNodes comme ceci:

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

Utilisez un espace blanc pour faire correspondre tous les descendants d'un élément:

div.dropdown * {
    color: red;
}

x y correspond à chaque élément y situé à l'intérieur x , aussi profondément imbriqué soit-il - enfants, petits-enfants, etc. sur.

L'astérisque * correspond à n'importe quel élément.

Spécification officielle: CSS 2.1: Chapitre 5.5: Sélecteurs de descendants

556
anroesti

La règle est la suivante:

A B 

B en tant que descendant de A

A > B 

B comme enfant de A

Alors

div.dropdown *

et pas

div.dropdown > *
127
Abdennour TOUMI