Maison > Article > interface Web > Utilisation des pseudo-éléments avant et après en CSS
Cet article vous présente principalement plusieurs scénarios d'utilisation de pseudo-éléments créés par :before et :after en CSS, comme le remplissage de texte, servant de police d'icônes, de ligne de progression, de chronologie et de figures géométriques. J'espère que cela pourra vous aider.
1. Introduction
1.1 Description
: before et :after en CSS créeront un pseudo-élément, où le pseudo-élément créé par : before est le sélectionné one Le premier élément enfant de l'élément, et le pseudo-élément créé par :after est le dernier élément enfant de l'élément sélectionné. Le style par défaut des pseudo-éléments créés par
:before et :after est le style en ligne.
1.2 Syntaxe
/* CSS3 */ selector::before /* CSS2 */ selector:before
CSS3 a introduit :: (deux deux-points) pour distinguer les pseudo-classes (:un deux-points) et les pseudo-éléments (::deux deux-points).
Pseudo-classe : exploite l'élément lui-même, comme :hover, :first-child, :focus, etc.
Pseudo élément : exploite les sous-éléments de l'élément, tels que ::before, ::after, ::content, etc.
Supporte uniquement :(un deux-points) dans IE8, donc afin d'être compatible avec ces navigateurs, vous pouvez également utiliser :before et :after.
1.3 Attribut content
L'attribut content représente le contenu rempli par le pseudo élément.
Exemple
CSS :
.test-p { width: 100px; height: 100px; margin-left: 20px; background-color: #eee; } .test-p::before { content: "♥"; color: red; } .test-p::after { content: "♥"; color: blue; }
Page HTML :
Effet :
1.4 Éléments remplaçables
Élément remplacé : Sa présentation n'est pas contrôlée par CSS. Ces éléments sont des objets dont l'apparence est rendue indépendamment du CSS.
Les éléments remplaçables typiques incluent
Certains éléments ne se comportent comme des éléments remplaçables que dans certains cas particuliers, tels que
:before :after n'est pas efficace dans de tels éléments.
Prise en charge du navigateur 1.5
La version IE9 ne prend entièrement en charge que :before :after , Chrome et Firefox sont désormais entièrement pris en charge.
IE Edge Firefox Chrome Android Chrome iOS Safari 9 all 2 all all all
2. Scénarios d'application
2.1 Prise en charge des caractères de texte
Description : L'attribut de contenu prend en charge les caractères de texte.
Exemple :
2.2 Prise en charge des polices d'icônes
Remarque : L'attribut content prend également en charge l'affichage des graphiques de polices d'icônes. C’est aussi le scénario le plus utilisé.
Exemple : Cet exemple a fait référence à la bibliothèque d'icônes Alibaba iconfont
2.3 Ligne de progression et chronologie
Explication : Les pseudo-éléments créés par :before :after peuvent être positionnés dans une ligne manière À des positions spécifiées autour des éléments, tels que les lignes de progression et les chronologies.
1) Ligne de progression
2) Chronologie
2.4 Formes géométriques
Description : En définissant les attributs liés à la bordure du pseudo-élément :before :after, vous pouvez créer de nombreuses figures géométriques telles que des triangles, des polygones, des étoiles à cinq branches, etc.
1) Rectangle
Description : Par défaut, l'attribut border du pseudo-élément :before :after est le même que celui des autres éléments HTML.
CSS :
p::before { width: 0px; height: 0px; content: ''; position: absolute; border-top: 50px solid #f50000; border-right: 50px solid #6cc361; border-bottom: 50px solid #6167c3; border-left: 50px solid #fa00d9; }
Effet :
2) Triangle
Description : Afficher une certaine bordure d'orientation , et masquez les bordures sur les côtés gauche et droit (l'arrière-plan est défini sur transparent), permettant au pseudo-élément d'afficher une forme de triangle.
Exemple :
Recommandations associées :
js obtient le contenu du pseudo-élément de partage<.>
Tutoriel d'exemple d'utilisation des pseudo-éléments ::before et ::after
Une brève discussion sur la compréhension des pseudo-classes et pseudo CSS -éléments
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!