Maison > interface Web > tutoriel CSS > Plusieurs pseudo-éléments :before peuvent-ils être appliqués à un seul élément HTML ?

Plusieurs pseudo-éléments :before peuvent-ils être appliqués à un seul élément HTML ?

Mary-Kate Olsen
Libérer: 2024-11-15 22:17:03
original
810 Les gens l'ont consulté

Can Multiple :before Pseudo-elements be Applied to a Single HTML Element?

Multiple : avant les pseudo-éléments : un aperçu des restrictions

Question :

Peut-on plusieurs :avant que les pseudo-éléments soient appliqués à un seul code HTML element?

Réponse :

Malheureusement, il n'est pas possible d'avoir plusieurs pseudo-éléments :before pour le même élément en CSS2.1. Un élément ne peut avoir qu'un seul pseudo-élément de n'importe quel type à la fois, y compris :before et :after.

Explication :

Lorsque plusieurs règles :before s'appliquent au même élément, ils cascadent et fusionnent en un seul pseudo-élément :before. Seule la règle la plus haute, avec la priorité la plus élevée, voit ses déclarations appliquées. Ceci est cohérent avec le fonctionnement de la cascade pour les propriétés CSS classiques.

Par conséquent, dans votre exemple :

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

Seule la deuxième règle sera appliquée et le résultat sera :

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

Approches alternatives :

Pour surmonter cette limitation, vous pouvez soit :

  • Combinez plusieurs règles en un seul sélecteur, tel que .circle.now:before, qui appliquerait les deux règles à l'élément.
  • Utilisez un préprocesseur CSS comme Sass ou Less, qui vous permet d'imbriquer des sélecteurs et de créer plusieurs pseudo-éléments :before pour le même élément.

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