有没有办法控制一块区域的宽度刚好是80个英文字符?

2012-03-13 20:35:56 +08:00
 013231
想在浏览器中模拟终端界面, 不料在确定区域宽度时遇到了麻烦.
用em指定是不行的, 1em是一个汉字的宽度; px也不行, 即使指定了font-size, font-family和letter-spacing, 不同浏览器中80个字符的宽度也不同.
4515 次点击
所在节点    CSS
3 条回复
cutehalo
2012-03-13 20:43:54 +08:00
在容器里放个div里面装80个空格?好像很不靠谱的方法啊。。。
sparanoid
2012-03-13 20:47:03 +08:00
字符等宽的话试试用 ch 单位?
rechtar
2012-03-13 21:07:36 +08:00
ch 单位就是做这个的,可惜只有 Mozilla 跟 IE9 支持。

我觉得更靠谱的思路是用脚本主动控制文本在 80 个时折行,而不是限制区域宽度然后依靠浏览器的自动折行——然后把区域用 <pre> 包住。

研究下前人的做法呗。比如 http://www.htmlfivewow.com/demos/terminal/terminal.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/29541

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX