Maison > interface Web > tutoriel CSS > le corps du texte

Pouvez-vous appliquer plusieurs pseudo-éléments :before à un seul élément ?

Barbara Streisand
Libérer: 2024-11-10 14:23:03
original
795 Les gens l'ont consulté

Can You Apply Multiple :before Pseudo-Elements to a Single Element?

Plusieurs pseudo-éléments :avant peuvent-ils améliorer le même élément ?

Introduction :
Lors de l'utilisation de CSS, une question courante se pose : plusieurs pseudo-éléments :before peuvent-ils être appliqués à un seul élément ? Pour comprendre la réponse, approfondissons le concept de pseudo-éléments et explorons comment ils interagissent avec la cascade.

Pseudo-éléments CSS et cascade :
En CSS2.1 , un élément ne peut posséder qu'un seul pseudo-élément d'un type spécifique à la fois, comme :before ou :after. Cela signifie qu'un élément peut avoir les deux, mais pas plusieurs instances du même type.

Exemple d'utilisation de jQuery :
Comme illustré dans le code donné, tenter d'appliquer plusieurs pseudo :before -éléments sur un élément à l'aide de jQuery, seul le dernier prend effet :

.circle:before {
    content: "CF";
    font-size: 19px;
}
.now:before{
    content: "Now";
    font-size: 19px;
    color: black;
}
Copier après la connexion

Comportement en cascade :
Lorsque plusieurs règles :before s'appliquent au même élément, elles se suivent les règles en cascade, où la règle ayant la priorité la plus élevée (la dernière) remplace les autres. Il en résulte un seul pseudo-élément :before avec les déclarations de la dernière règle uniquement, comme dans ce qui suit :

.circle.now:before {
    content: "Now";
    font-size: 19px;
    color: black;
}
Copier après la connexion

Surmonter la limitation :
Si plusieurs :before Si des déclarations sont souhaitées pour le même élément, il faut créer des règles CSS supplémentaires avec des sélecteurs combinés. Cela permet de spécifier le comportement souhaité pour différentes combinaisons de classes :

.circle.now:before { /* Specific rule for .circle with .now */ }
.now.circle:before { /* Specific rule for .now with .circle */ }
Copier après la connexion

Héritage CSS et développements futurs :
La spécification obsolète css3-content proposait d'insérer plusieurs pseudo-éléments à l'aide d'un notation compatible avec la cascade CSS2.1. Cependant, cette fonctionnalité n’a jamais été implémentée. Actuellement, les versions css-content-3 et css-pseudo-4 omettent cette fonctionnalité en raison d'un manque d'intérêt.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal