好吧,这真把我搞糊涂了。我在一个div里面有一些内容,就像这样:

<div style="background-color: green; width: 200px; height: 300px;">

Thisisatest.Thisisatest.Thisisatest.Thisisatest.Thisisatest.Thisisatest.

</div>

但是,由于“word”太长,内容会溢出DIV(正如预期的那样)。

我怎么能迫使浏览器在必要的地方“打破”这个词,以适应里面的所有内容?


当前回答

& # 8203;是unicode字符的HTML实体,称为零宽度空格(ZWSP),它是一个不可见的字符,指定换行机会。类似地,连字符的作用是在单词边界内指定换行机会。

其他回答

用word-break: normal似乎比用word-break: break-word更好,因为break-word会打断EN这样的首字母

word-break: normal

正如@davidcondrey在回复中提到的,不仅有ZWSP,还有SHY &#173;:可以用在非常长的、构造好的单词中(比如德语或荷兰语),这些单词必须在你想要的地方被打断。 看不见,但它在需要的时候给了一个连字符,从而最大限度地保持单词连接和行填充。

That way the word luchthavenpolitieagent might be noted as lucht&shy;haven&shy;politie&shy;agent which gives longer parts than the syllables of the word. Though I never read anything official about it, these soft hyphens manage to get higher priority in browsers than the official hyphens in the single words of the construct (if they have some extension for it at all). In practice, no browser is capable of breaking such a long, constructed word by itself; on smaller screens resulting in a new line for it, or in some cases even a one-word-line (like when two of those constructed words follow up).

供你参考:这是荷兰语,机场警察的意思

CSS换行:break-word;,在FireFox 3.6.3中测试

删除空白:nowrap,如果有的话。

实现:

white-space: inherit;
word-break: break-word;

试试我们的风格

white-space: normal;