28173 sujets

CSS et mise en forme, CSS3

Hello,

Je désire que ma colonne de navigation s'adapte selon la taille du texte. J'utilise pour cela des valeurs en "em" pour la dimension de ma colonne et de mon texte (qui devrait s'adapter).

Visiblement, la valeur "em" donne des tailles différentes selon la police de caractère que j'utilise. Du coup, le texte sort de la colonne.

Pourquoi la colonne ne s'adapte-t-elle pas? Est-ce à cause du fait que j'applique une valeur "em" à un élément "in line" (texte) et également à un élément "block" (div)?

Le but serait d'adapter la colonne selon que l'utilisateur augmente la taille de sa police dans le navigateur.

merci
Bonjour,

Peux-tu nous fournir un exemple en ligne, ou ne fut-ce que quelques lignes de code à nous mettre sous la dent?
En théorie, rien ne sert de dimensionner ton conteneur (c'est même globalement déconseillé), il s'adaptera normalement à la quantité de contenu qu'il englobe.
miloose a écrit :
Visiblement, la valeur "em" donne des tailles différentes selon la police de caractère que j'utilise.

Normalement, non.
La principale unité qui varie en fonction de la fonte utilisée, c'est l'unité ex, qui est calculée d'après les propriétés de la fonte avec certains navigateurs (d'autres se contentent de poser 1ex = 1/2em, et dans ce cas le choix de la fonte ne change rien).

Par contre, une valeur en EM dépendra de la valeur calculée de font-size pour l'élément.

Pour revenir au sujet lui-même: je n'ai pas bien compris ce que tu veux faire:
- un bloc dont la hauteur dépend de son contenu? (auquel cas, voir la réponse de Benjamin: on ne donne pas de hauteur)
- un bloc qui aurait la même auteur qu'un autre bloc adjacent? (auquel cas, se renseigner sur la technique dite des colonnes factices)