


Comment alterner les couleurs des éléments avec :nth-child lorsque vous ignorez des éléments qui ne correspondent pas ?
:nth-child(pair/impair) Sélecteur avec classe
En CSS, le sélecteur :nth-child(n) sélectionne des éléments qui sont le nième enfant de leur parent. Lorsque n est impair, le sélecteur nième enfant (impair) sélectionne les éléments impairs, et lorsque n est pair, le sélecteur nième enfant (pair) sélectionne les éléments pairs.
Considérez le balisage HTML suivant , où nous voulons appliquer les sélecteurs :nth-child pour lister les éléments avec la classe "parent":
<ul> <li class="parent">green</li> <li class="parent">red</li> <li>ho ho ho</li> <li class="parent">green</li> <li class="parent">red</li> </ul>
Application du CSS suivant au HTML ci-dessus :
.parent:nth-child(odd) { background-color: green; } .parent:nth-child(even) { background-color: red; }
De façon inattendue, la couleur des éléments est réinitialisée après le premier élément non-.parent. En effet, le sélecteur :nth-child s'applique à tous les éléments de la liste, pas seulement à ceux avec la classe "parent".
Pour obtenir le comportement souhaité, nous devons utiliser le combinateur général des frères et sœurs (~) , qui sélectionne un élément qui précède un autre élément dans l'arborescence DOM. En combinant cela avec le sélecteur :nth-child, nous pouvons alterner les couleurs des éléments ".parent" à chaque fois qu'un élément non-.parent est rencontré :
.parent:nth-child(odd) { background-color: green; } .parent:nth-child(even) { background-color: red; } /* after the first non-.parent, toggle colors */ li:not(.parent) ~ .parent:nth-child(odd) { background-color: red; } li:not(.parent) ~ .parent:nth-child(even) { background-color: green; } /* after the second non-.parent, toggle again */ li:not(.parent) ~ li:not(.parent) ~ .parent:nth-child(odd) { background-color: green; } li:not(.parent) ~ li:not(.parent) ~ .parent:nth-child(even) { background-color: red; }
Cette approche nous permet d'alterner les couleurs des éléments ".parent" tout en ignorant les éléments non-.parent. Cependant, le nombre d'éléments non-.parent que le sélecteur :nth-child peut anticiper est limité, cette technique peut donc ne pas être pratique pour les très longues listes avec de nombreuses classes alternées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Créez un formulaire de contact JavaScript avec le cadre Smart Forms

Ajout d'ombres de boîte aux blocs et éléments WordPress

Créer un éditeur de texte en ligne avec l'attribut satisfaistable

Demystifier les lecteurs d'écran: formulaires accessibles et meilleures pratiques

Faire votre première transition Svelte personnalisée

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres)

Téléchargement de fichiers avec Multer dans Node.js et Express
