(À ne pas confondre avec Xunit , une bibliothèque de tests unitaires .Net populaire.)
Aujourd'hui, dans un accès d'ennui, j'ai commencé à inspecter Gmails DOM (oui, je m'ennuyais beaucoup).
Tout semblait assez simple jusqu'à ce que je remarque une spécification intéressante sur la largeur de certains éléments. Les illustres Googlites avaient spécifié un certain nombre de colonnes de table en utilisant l'unité rare «ex».
width: 22ex;
Au début, j'étais perplexe ("qu'est-ce qu'un 'ex'?"), Puis cela m'est revenu: il me semble que je me souviens de quelque chose d'il y a des années lorsque j'apprenais le CSS pour la première fois. De la spécification CSS3 :
[L' unité ex est] égale à la hauteur x utilisée de la première police disponible . La hauteur x est ainsi appelée car elle est souvent égale à la hauteur du «x» minuscule. Cependant, un «ex» est défini même pour les polices qui ne contiennent pas de «x».
Bel et bien. Mais je ne l'ai jamais vu utilisé auparavant (et encore moins utilisé moi-même). J'utilise les ems assez couramment, et j'apprécie leur valeur, mais pourquoi le "ex"? Cela semble une mesure beaucoup moins standard que le em, et beaucoup moins utile.
L'une des rares pages que j'ai trouvées sur ce sujet est http://www.xs4all.nl/~sbpoley/webmatters/emex.html de Stephen Poley . Stephen fait valoir de bons points, cependant, sa discussion ne me paraît pas concluante.
Ma question est donc la suivante: quelle valeur l'unité «ex» prête-t-elle à la conception Web?
(Cette question pourrait être qualifiée de subjective, mais je laisserai cette décision à des SO'ers plus expérimentés que moi.)
em
unité ne mesure pas une largeur - elle mesure la hauteur de la police.1 em
est lafont-size
valeur calculée etfont-size
spécifie «la hauteur souhaitée des glyphes» . Alors les deuxem
etex
mesurent une hauteur. (ch
cependant, mesure une largeur.)Pour répondre à la question, une utilisation est avec exposant et indice. Exemple:
sup { font-size: 75%; height: 0; line-height: 0; position: relative; vertical-align: baseline; bottom: 1ex; }
la source
Une autre chose à considérer ici est la mise à l'échelle de votre page lorsqu'un utilisateur augmente ou réduit la taille de sa police (peut-être en utilisant ctrl + molette de la souris (Windows)).
Je l'ai utilisé avec .. padding-left: 2 em; padding-right: 2 em;
et ex avec rembourrage en bas: 2 ex; rembourrage haut: 2 ex;
Ainsi, en utilisant une unité de mesure verticale pour une propriété de mise à l'échelle verticale et une unité de mesure horizontale pour une propriété de mise à l'échelle horizontale.
la source
ch
est une unité horizontale mesurant la largeur du chiffre zéro ("0").La valeur de l' avoir dans la spécification CSS, si c'est ce que vous demandez vraiment, est exactement la même que la valeur d'avoir l'unité em.
Il vous permet de définir les polices sur des tailles relatives .
Vous ne savez pas quelle est ma taille de police de base. Une bonne stratégie pour la conception Web consiste donc à définir des tailles de police relatives plutôt qu'absolues; l'équivalent de "doubler votre taille normale" ou "un peu plus petit que votre taille normale" plutôt qu'une taille fixe comme "dix pixels".
la source
ex
semble être l'équivalent.M
. Mais CSS a raffinéem
. Voir Wikipedia .ch
unité comme mentionné sur une autre réponse.Notez que des termes comme "interligne simple / double" signifient en fait le décalage entre deux lignes adjacentes, mesuré par em . Donc "double interligne" signifie que chaque ligne a une hauteur de 2 em .
Par conséquent, si vous souhaitez spécifier une distance verticale proportionnelle aux "lignes", utilisez em. N'utilisez ex que si vous voulez la hauteur réelle de la lettre minuscule, ce qui est, j'ose dire, une instance beaucoup plus rare.
MISE À JOUR: La norme Web permet au navigateur d'utiliser 0,5em comme ex ou dériver de la police.
Cependant, il n'y a aucun moyen d'incorporer de manière fiable des informations "x-height" dans une police (OpenType ou webfont).
Par conséquent, la première possibilité rend l'ex-unité redondante et la seconde ne dispose d'aucun moyen fiable pour se produire. Et le fait que l'un ou l'autre soit possible le rend encore moins fiable.
Ainsi je plaide pour le manque de valeur de l'ex-unité.
la source