I'm trying to display emails with IMAP. When the email is text though, the newlines \n don't display properly. I'd rather not convert them to breaks < br /> because if the user wanted to reply to that email, it would now be in HTML instead of plain text. Is there perhaps a javascript function that could display it as a line break without changing the code?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
How about HTML/CSS? If you put your text inside a <pre>
tag, it will show all newlines exactly as they were. Alternatively, you can achieve the same effect by applying the CSS style white-space:pre
to any element.
Don't forget to HTMLencode it still (<
to <
etc.), otherwise it will all break apart at the first angle bracket.
回答2:
Just add this white-space
css style property to render Multiline texts :
.multiline
{
white-space: pre-wrap;
}
and then :
<div class="multiline">
my
multiline
text
</div>
now newlines will render like br elements.
回答3:
white-space CSS works fine but for cross-browser compatibility
.abc {
word-wrap: break-word; /* IE 5.5-7 */
white-space: pre-wrap; /* Modern browsers */
}
Your Html
<div class="abc">
Lorem
Ipsum
is
simply
dummy
</div>
MDN Source