尊重HTML显示中从API响应返回的"\n"换行符(和特殊字符)

ton*_*nic 2 html javascript newline sinatra

我通过API访问数据,该API以下列格式返回字符串:

你好这是一些文字.\n \n这里还有一些包含"引号"中的短语.\n \n另外一件事:\n \n*子弹点.\n*子弹点.\n*子弹点.\n*Fin.

这是一个sinatra应用程序,在我看来,我只是访问变量并显示如下:

<%= thing.description %>
Run Code Online (Sandbox Code Playgroud)

渲染时,实际上没有任何新行被尊重.它全部显示为单行.我不确定解决这个问题的正确方法.有没有办法\n<br>标签替换s ?或者是其他东西?

lan*_*nzz 7

您可以将字符串括在一个<pre>块中(通常具有使用等宽字体的附加效果),或者您可以将其包含在您选择的块中并使用它进行样式设置white-space: pre;.

  • 不,它们是CSS样式,可以这样应用.例如`<div style ="white-space:pre-wrap">` (2认同)