Une liste ordonnée peut-elle produire des résultats qui ressemblent à 1.1, 1.2, 1.3 (au lieu de seulement 1, 2, 3, ...) avec CSS? Jusqu'à présent, l'utilisation list-style-type:decimal
n'a produit que 1, 2, 3, et non 1.1, 1.2., 1.3.
201
Réponses:
Vous pouvez utiliser des compteurs pour ce faire:
Exemple
Voir Compteurs imbriqués et étendue pour plus d'informations.
la source
li:before
:content: counters(item, ".")". ";
Aucune des solutions de cette page ne fonctionne correctement et universellement pour tous les niveaux et les longs paragraphes (enveloppés). Il est vraiment difficile d'obtenir une indentation cohérente en raison de la taille variable du marqueur (1., 1.2, 1.10, 1.10.5,…); il ne peut pas être «simulé», même avec une marge / un remplissage précalculé pour chaque niveau d'indentation possible.
J'ai finalement trouvé une solution qui fonctionne réellement et n'a pas besoin de JavaScript.
Il est testé sur Firefox 32, Chromium 37, IE 9 et le navigateur Android. Ne fonctionne pas sur IE 7 et versions antérieures.
CSS:
Exemple:
Essayez-le sur JSFiddle , bifurquez-le sur Gist .
la source
La réponse choisie est un bon début, mais elle force essentiellement le
list-style-position: inside;
style sur les éléments de la liste, ce qui rend le texte enveloppé difficile à lire. Voici une solution de contournement simple qui permet également de contrôler la marge entre le nombre et le texte, et aligne à droite le nombre selon le comportement par défaut.JSFiddle: http://jsfiddle.net/3J4Bu/
la source
ol
comportement par défaut . Il peut facilement être supprimé en supprimant le dernier"."
de lacontent
propriété, mais cela me semble un peu étrange.Les solutions publiées ici ne fonctionnaient pas bien pour moi, j'ai donc fait un mélange de celles de cette question et de la question suivante: Est-il possible de créer une liste ordonnée à plusieurs niveaux en HTML?
Résultat:
Remarque: la capture d'écran, si vous souhaitez voir le code source ou quoi que ce soit de cet article: http://estiloasertivo.blogspot.com.es/2014/08/introduccion-running-lean-y-lean.html
la source
Remarque: Utilisez CSS pour créer une numérotation imbriquée dans un navigateur moderne. Voir la réponse acceptée. Ce qui suit est à titre historique seulement.
counters
Si le navigateur prend en charge
content
etcounter
,la source
.foo > ol > li
.counters()
fonction comme dans les exemples ci-dessus au lieu de lacounter()
fonction.Résultat: http://i.stack.imgur.com/78bN8.jpg
la source
J'ai un problème quand il y a deux listes et que la seconde est à l'intérieur de DIV La deuxième liste devrait commencer à 1. pas 2.1
http://jsfiddle.net/3J4Bu/364/
EDIT: J'ai résolu le problème par ce http://jsfiddle.net/hy5f6161/
la source
Dans un avenir proche, vous pourrez peut-être utiliser l'
::marker
élément pseudo pour obtenir le même résultat que d'autres solutions dans une seule ligne de code.N'oubliez pas de vérifier le tableau de compatibilité du navigateur car il s'agit toujours d'une technologie expérimentale. Au moment de la rédaction, seuls Firefox et Firefox pour Android, à partir de la version 68, le prennent en charge.
Voici un extrait qui s'affichera correctement s'il est essayé dans un navigateur compatible:
Vous pouvez également consulter cet excellent article de smashingmagazine sur le sujet.
la source
J'avais besoin d'ajouter cela à la solution publiée dans 12 car j'utilisais une liste avec un mélange de composants de liste ordonnée et de listes non ordonnées. contenu: aucune citation ne semble étrange à ajouter, je sais, mais cela fonctionne ...
la source
Ce qui suit a fonctionné pour moi:
Regardez: http://jsfiddle.net/rLebz84u/2/
ou celui-ci http://jsfiddle.net/rLebz84u/3/ avec plus de texte justifié
la source
c'est le bon code si vous voulez que le premier enfant redimensionne d'autres css.
dans le fichier html.
la source