不打断单词的自动换行

4
我一直在使用Web服务器发送HTML格式的电子邮件,到目前为止,一切都很好(内容和显示都不错),除了换行。单行文本(用户输入)可能会无限延伸并在流行的电子邮件Web客户端上产生水平滚动条。
因此我进行了一些研究。我实现了<div style="width: 100%; word-break: break-word;"><!-- Content here --></div>,它完美地工作了,但是它开始分割我的单词。我想做的是使它们进入下一行,同时保留单词换行。
其他在线资源说<div>标签确实会自动换行,但在Web客户端中却不起作用。我猜这可能是由于某些背后的CSS,但我没有去调查过。
有人对我的问题有任何解决方案/建议吗?我不想进行服务器端格式化;首先我认为那很繁琐,其次我认为在不同的Web电子邮件客户端上看起来会不同...谢谢!
2个回答

2

1
你在网上有模型吗? - Patrick Moore
1
是我的代码让我烦躁...我把所有的空格都转换成了&nbsp;,结果最后变成了一个很长的字符串。删除它并应用white-space: pre-line;样式真是太神奇了,谢谢!! - matt

2

实际上,有些东西在幕后阻止了正常的包裹。我们确实需要看到幕后或者至少在现场分析情况,但在简单的情况下,在 div 上添加这个 CSS 应该会有所帮助:

white-space: normal;

这是初始值,但可能被其他东西覆盖。如果这不能帮助解决问题,请尝试

white-space: normal !important;

避免使用word-break: break-word,因为正如其名称所示,它会真正地打断单词。它适用于允许在任何位置断开的书写系统。

实际上我需要它是 white-space: pre-line;,因为我需要保留用户的输入。我从来不知道有一个叫做 white-space 的 CSS 属性,因为我一直在用 &nbsp; 替换所有的空格...谢谢! - matt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接