【前端】html不渲染换行等的问题 pre
2026/6/6 16:11:43 网站建设 项目流程

方法一

string.replace(/\r\n/g,'</br>')

方法二 推荐 使用pre 元素

<div style="white-space: pre;">这是一个 带有换行的文本。</div>

或者

<pre>这是一个 带有换行的文本。</pre>
<style> /* 设置 white-space 样式 */ pre { white-space: pre-wrap; } </style> <div> <pre>{{sqlHtml}}</pre> </div>

pre 元素

<pre> 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。

<pre> 标签的一个常见应用就是用来表示计算机的源代码。

由上述代码可知,在正常的元素中,无论使用多少个空格或换行符,都只会折叠成一个空格;而在pre中,会保留空格和换行符,显示的文本格式和html文件中的文本格式是一致的。

[扩展]:

  • 空白折叠:在源代码中的连续空白字符(空格、换行、制表),在页面显示时,会被折叠成为一个空格。而在pre元素中的内容不会出现空白折叠,在pre元素中的内容,会按照源代码格式显示到页面上。
  • 显示代码时,通常在外面套一个code元素,code表示代码区域。
  • white-space解析:
描述
normal默认,空白会被浏览器忽略。
pre空白会被浏览器保留,其行为类似HTML中的<pre>标签。
nowrap文本不会换行,文本会在同一行上继续,知道遇到<br>标签为止。
pre-wrap保留空白符序列,但是正常的进行换行。
pre-line合并空白符序列,但是保留换行符。
inherit规定应该从父元素继承white-space属性的值。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询