Maison  >  Article  >  interface Web  >  Explication détaillée de la différence entre nième-enfant et nième-de-type en CSS3

Explication détaillée de la différence entre nième-enfant et nième-de-type en CSS3

小云云
小云云original
2017-12-13 12:01:121949parcourir

La différence entre nth-child et nth-of-type en CSS3 est en fait très simple : Pourquoi :nth-of-type est-il appelé :nth-of-type ? Parce qu'il se distingue par "type". C'est-à-dire : ele:nth-of-type(n) fait référence au nième élément ele sous l'élément parent, et ele:nth-child(n) fait référence au nième élément sous l'élément parent et cet élément est ele. Si ce n'est pas le cas, la sélection échoue.

Le texte peut paraître obscur, mais il est plus facile à comprendre Voici un petit exemple :


<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>demo</title>
</head>
<style>
.demo li:nth-child(2){
color: #ff0000;
}
.demo li:nth-of-type(2){
color: #00ff00;
}
</style>
<body>
<p>
<ulclass="demo">
<p>zero</p>
<li>one</li>
<li>two</li>
</ul>
</p>
</body>
</html>

<.>


Les résultats sont les suivants :

Explication détaillée de la différence entre nième-enfant et nième-de-type en CSS3

Dans l'exemple ci-dessus, .demo li:nth-child(2) sélectionne
  • , tandis que .demo li:nth-of-type(2) sélectionne le nœud
  • two
  • Mais que se passe-t-il si aucune balise n'est spécifiée avant nième enfant et nième de type ?

    .demo :nth-child(2){
    color:#ff0000;
    }
    .demo :nth-of-type(2){
    color:#00ff00;
    }


    Quel sera le résultat de cela ?

    <ulclass="demo">
    <p>first p</p>
    <li>first li</li>
    <li>second li</li>
    <p>second p</p>
    </ul>

    Résultat :

    Explication détaillée de la différence entre nième-enfant et nième-de-type en CSS3

    Comme on peut le voir ci-dessus, le type de tag n'est pas précisé avant eux, :nth-child( 2) La sélection est toujours le deuxième élément, quelle que soit son étiquette. Et :nth-type-of(2) sélectionne deux éléments, qui sont la deuxième balise p et la deuxième balise li dans parent.demo. On peut voir que lorsque le type de balise n'est pas spécifié, :nth-type -of. (2) sélectionnera la deuxième de toutes les balises de type.

    Nous avons déjà compris les utilisations de base et les différences entre le nième-enfant et le nième-de-type, alors qu'est-ce que n dans le nième-de-type(n) et le nième-enfant(n) ?

    n dans nième-de-type(n) et nième-enfant(n) peut être un nombre, un mot-clé ou une formule. Chiffres : il s’agit de l’utilisation des exemples ci-dessus, je n’entrerai donc pas dans les détails. Mots-clés : Impair, pair

    Pair et impair sont des mots-clés qui peuvent être utilisés pour faire correspondre des sous-éléments dont les indices sont impairs ou pairs 🎜>

    Ici, nous spécifions deux couleurs d'arrière-plan différentes pour les p impairs et pairs. éléments :

    p:nth-of-type(odd){background:#ff0000;}p:nth-of-type(even){background:#0000ff;}
    Formule : ou expression arithmétique

    Utilisez la formule (an + b). Description : indique la durée de la période, n est le compteur (à partir de 0) et b est la valeur de décalage.

    Ici, nous spécifions la couleur d'arrière-plan de tous les p éléments dont les indices sont des multiples de 3 :

    p:nth-of-type(3n+0){background:#ff0000;}
    If:nth-of- type( 4n+2) sélectionne tous les éléments dont les indices sont des multiples de 4 plus 2.

    Recommandations associées :

    Comment utiliser l'attribut de dégradé de transformation en CSS3

    Introduction détaillée à l'attribut de filtre de CSS3

    Que signifie nth-child(3n) en jquery ?

    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!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn