CSS:em或ex用于数字宽度?

时间:2014-04-15 08:13:14

标签: css font-size em

我必须设置输入字段的宽度,例如它适合2个数字(例如从00到99)。 我试过width:2em但它太大了,`width:2ex'它太小了......

哪个单位最好用?它取决于字体类型吗?

修改

我知道比例字体会使宽度计算变得困难,但通常数字具有固定的宽度以允许数字对齐。所以我发现有一些单位可以处理它们......

e.g。以下10位随机序列(按比例字体)具有相同的宽度...

1234567890

3421434234

2324235252

1 个答案:

答案 0 :(得分:1)

一个em是当前字体的最大字符宽度(大写字母M的宽度)。一个ex大约是当前字体高度的一半(小写x的高度)。

可悲的是,如果你没有使用等宽字体(所有字母占据相同数量的水平空间,例如Courier),某些字母组合的宽度将不会与其他字母的宽度相同多个字母的组合。

示例:

Stack Overflow不会使用等宽字体作为其注释,因此这些后续行的宽度不同,但包含相同数量的字母:

IIIIIIIII
MMMMMMMMM

但是,如果我用等宽字体书写,它们占据相同的水平宽度:

iiiiiiiii
MMMMMMMMM