【发布时间】:2012-01-01 10:55:39
【问题描述】:
当使用固定宽度字体时,我想用字符指定HTML元素的宽度。
“em”单位应该是 M 字符的宽度,所以我应该可以使用它来指定宽度。这是一个例子:
<html>
<head>
<style>
div {
font-family: Courier;
width: 10em;
}
</style>
</head>
<body>
<div>
1 3 5 7 9 1 3 5 7 9 1
</div>
</body>
</html>
结果不是我想要的,因为浏览器在第 15 列之后换行,而不是 10:
1 3 5 7 9 1 3 5
7 9 1
(Firefox 和 Chromium 中的结果,都在 Ubuntu 中。)
Wikipedia's article 说“em”并不总是 M 的宽度,因此看起来“em”单元肯定不能被信任。
【问题讨论】:
-
我相信“en”也是合法的宽度;它是排版中数字的宽度。这可能对你更有效。
-
'em' 属性使用字体的 font-size 或 height,而不是字母的宽度。 @Pete:不是,见CSS Values and Units Module Level 3。
-
除非您使用的是固定宽度的字体,否则不同的字符有不同的宽度。因此,根据显示的字符数设置宽度在功能上是不可能的。
-
“这个问题仍然需要其他用户的 4 票才能关闭” - 嘿,这是我的问题!让我关闭它!