HTML 中如何防止长单词撑开表格?
相信每个 Web 设计人士都遇到过这样的情况:
已经制定了表格单元格(或者其他容器)的宽度,但是如果单元格内的文字是一个很长的单词,确切说是一串没有空格的连续字符,例如 aaaaaaaaaaaaaaaaaaaaaaabbbbbb,这串字符的显示长度如果大于该容器的宽度,一般情况下不会自动这行而会撑开容器,从而破坏布局。
一种目前比较完美的解决办法是,设定下面的 CSS(以 table 为例):
table {
table-layout: fixed;
width: 100%;
overflow: hidden;
word-wrap: break-word;
border: 1px solid #f00; /* 这行非必要 */
}
其中 word-break 属性只有最新的浏览器(Fx 3.5+、Chrome、Safari)才支持,而 overflow 则是 fail-safe,干脆隐藏超长的部分。原文作者说这个方案在 IE 下也行,我没测试,don't care, fuck IE!
像“aaaaaaaaabbbbbb”这样的无空格长字符串,一般都是垃圾,隐藏掉也的确挺合适。不过也有其他选择,overflow的缺省值是visible,会把容器撑大,也可以设置成auto或scroll,这样会出现滚动条,以便通过滚动显示出超出部分。
http://hacks.mozilla.org/2009/06/word-wrap/
https://developer.mozilla.org/En/CSS/Word-wrap#Browser_compatibility
………………!@$X※¥#……