HTML中带有'\ n'的换行符


Answers:


352

这是为了显示新行并以html返回回车,那么您不需要显式地执行它。您可以通过设置空白属性的行前值在CSS中完成此操作。

<span style="white-space: pre-line">@Model.CommentText</span>

12
如果还white-space: pre-wrap希望保留制表符空间,也可以使用。
维杰·谢戈卡

124

您可以将CSS white-space属性用于\n。您还可以保留中的标签\t

对于换行符\n

white-space: pre-line;

对于换行符\n和制表符\t

white-space: pre-wrap;


该功能已存在很长时间,并且所有主要浏览器都支持该功能
Darlesson

23

根据您的问题,可以通过多种方式完成:-例如,您可以使用:

如果要在文本区域中插入新行,可以尝试以下操作:

&#10;&#13;换行和回车

<textarea>Hello &#10;&#13;Stackoverflow</textarea>

您还可以<pre>---</pre>预格式化文本。

<pre>
     This is Line1
     This is Line2
     This is Line3
</pre>

或者,您可以使用<p>----</p>段落

<p>This is Line1</p>

<p>This is Line2</p>

<p>This is Line3</p>

注意:如果要使用\n,则需要安装Xampp或Apache之类的服务器以支持服务器端语言


5
您能详细说明一下您的最后一个音符吗?我不明白为什么您认为需要服务器端支持……
Shadow

正如其他几个答案所表明的那样,这里的最后一句话客观上是错误的。即使本机不支持它,您也可以使用客户端JavaScript轻松更改它。
约翰·蒙哥马利


12

您可以使用<pre>标签:

<div class="text">
<pre>
abc
def
ghi
</pre>
</div>


5

使用white-space: pre-line允许您直接在带有换行符的HTML中输入文本,而不必使用\n

如果您innerText通过JavaScript在非前置元素(例如a)上使用元素的属性,则默认情况下<div>\n值将<br>在DOM中替换为

  • innerText:替换\n<br>
  • innerHTMLtextContent:需要使用造型white-space

这取决于您如何应用文本,但是有很多选择

const node = document.createElement('div');
node.innerText = '\n Test \n One '


2

您应该考虑将制动器换成<br/>。在HTML中,换行符仅代表代码中的新行。

另外,您可以使用其他一些HTML标记,例如将行放在段落中:

<p>Sample line</p>
<p>Another line</p>

或其他包装,例如<div>sample</div>css属性:display: block

您也可以使用<pre>。的内容pre将忽略其html样式。换句话说,它将显示带有常规\n刹车线的纯HTML

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.