你可以制作换行符\n显示为休息吗?

Jam*_*mes 19 html javascript css formatting

我正在尝试使用IMAP显示电子邮件.当电子邮件是文本时,换行符\n无法正确显示.我宁愿不将它们转换为break <br />因为如果用户想要回复该电子邮件,它现在将是HTML而不是纯文本.是否有一个javascript函数可以在不更改代码的情况下将其显示为换行符?

Vil*_*lx- 42

HTML/CSS怎么样?如果您将文本放在<pre>标记内,它将完全按照原样显示所有换行符.或者,您可以通过将CSS样式white-space:pre应用于任何元素来实现相同的效果.

不要忘了还的HTMLEncode它(<&lt;等),否则将全部在第一个尖括号掰开.

  • 更好的是:使用`white-space:pre-wrap;`用于自动换行 (13认同)
  • 你也可以添加word-break:break-word; 线条太长时保留自动换行符. (2认同)

Cht*_*lek 14

只需添加此white-spacecss 样式属性即可呈现多行文本:

.multiline
{
   white-space: pre-wrap;
}
Run Code Online (Sandbox Code Playgroud)

进而 :

<div class="multiline">
  my
  multiline
  text
</div>
Run Code Online (Sandbox Code Playgroud)

现在换行符将呈现为 br 元素。

  • 一直以来?一直以来??!!!!而我则永远将它们转变为&lt;br&gt;... (2认同)

kes*_*esh 5

空白 CSS 工作正常,但为了跨浏览器兼容性

.abc {
  word-wrap: break-word;      /* IE 5.5-7 */
  white-space: pre-wrap;      /* Modern browsers */
}
Run Code Online (Sandbox Code Playgroud)

你的HTML

<div class="abc">
 Lorem 
 Ipsum 
 is 
 simply 
 dummy
</div>
Run Code Online (Sandbox Code Playgroud)

MDN 来源