[HTML/CSS] Créer des éléments "pré-fabriqués"
electroking
Messages postés
276
Statut
Membre
-
electroking Messages postés 276 Statut Membre -
electroking Messages postés 276 Statut Membre -
Bonjour à tous,
Je souhaite savoir comment je pourrai faire pour créer des éléments avec un contenu "automatique" :
Autrement dit, en insérant cette ligne :
Je souhaiterai que la page l'interprète comme si elle contenait des balises HTML, comme par exemple :
L'objectif étant de pouvoir utiliser un grand nombre de balises de classes monObjet sans avoir à réécrire son contenu à chaque fois.
J'avais cherché du coté de la propriété "content" en css qui permet d'ajouter à un ensemble de balises du contenu en fonction d'un selecteur, ex :
Qui donne ce résultat :
Malheureusement, cette propriétés css ne prend pas en compte les balises HTML d'après ce que j'ai compris. Et si je remplaçai par exemple "Quelques mots" dans l'exemple ci-dessus par "<span>Un texte</span>" j'obtiendrai ceci :
Auriez vous une solution qui me permette de réaliser ceci ?
Merci d'avance pour votre/vos réponse-s
--
Cordialement,
Faure Lucas.
Je souhaite savoir comment je pourrai faire pour créer des éléments avec un contenu "automatique" :
Autrement dit, en insérant cette ligne :
<div class="monObject"></div>
Je souhaiterai que la page l'interprète comme si elle contenait des balises HTML, comme par exemple :
<div class="monObject">
<span>Un texte</span>
</div>
L'objectif étant de pouvoir utiliser un grand nombre de balises de classes monObjet sans avoir à réécrire son contenu à chaque fois.
J'avais cherché du coté de la propriété "content" en css qui permet d'ajouter à un ensemble de balises du contenu en fonction d'un selecteur, ex :
<div class="monObject"></div>
.monObject::after { content: 'Quelques mots'; }
Qui donne ce résultat :
Quelques mots
Malheureusement, cette propriétés css ne prend pas en compte les balises HTML d'après ce que j'ai compris. Et si je remplaçai par exemple "Quelques mots" dans l'exemple ci-dessus par "<span>Un texte</span>" j'obtiendrai ceci :
<span>Un texte</span>
Auriez vous une solution qui me permette de réaliser ceci ?
Merci d'avance pour votre/vos réponse-s
--
Cordialement,
Faure Lucas.
3 réponses
-
Bonjour,
Tu peux toujours faire ça en javascript (et même plus simple... en jquery).
Par exemple (en jquery) via la méthode append
https://api.jquery.com/append/
$(".monObject").append("<span>Un texte</span>");
-
Le problème c'est que Javascript nécéssite un certain temps de traitement, et je préfèrerai de l'instantané ...
-
Alors peut-être en utilisant les caractères unicode
nav a:hover:after { content: "\2193"; }
Après.. voir si tu peux faire une séquence de caractères unicode qui représenteraient ton span
-
-
-
En fait le truc, c'est que je veux pouvoir faire ça sur un grande quantité de div (un nombre à 4 chiffres ou plus).
J'ai expérimenté les animations à la fois en js et en css et j'ai remarqué que le css avait un "temps d'exécution" - si je peut appeler ça comme ça - beaucoup plus court quand il s'agit de manipuler une grande quantité d'éléments ... -
-
-