首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在文本区域中保留换行符

问在文本区域中保留换行符
EN

Stack Overflow用户
提问于 2015-06-02 18:08:33
回答 4查看 91K关注 0票数 90

我有一个带有文本区的表单,我希望在输出内容时保留用户输入的换行符。

例如,如果我在文本区域中编写:

这里是一个句子。这是另一个。这里还有一个。

这是一个新的段落。这是一个新句子。这是另一个。

我想要相同的输出,而不是::

这里是一个句子。这是另一个。这里还有一个。这是一个新的段落。这是一个新句子。这是另一个。

如何保留换行符?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-06-02 18:40:48

通常,您只需添加

将

  • white-space: pre-line;空格修剪为单个空格or
  • white-space: pre-wrap;保留所有空格

元素的样式(CSS),您希望在其中使用换行符呈现文本。

票数 192
EN

Stack Overflow用户

发布于 2015-06-02 18:15:13

用户输入的换行符将被保留,html和php都不会简单地删除或更改任何内容。然而,html标记在为可视化而呈现时,使用不同的方式来编码换行。这有很好的理由。所以你要做的就是把现有的换行符“翻译”成html风格的换行符。

如何做到这一点取决于您正在工作的环境。通常,您必须将诸如\n之类的换行代码转换为<br>标记。php脚本语言为此提供了一个函数,例如:nl2br()

但是要小心:这只适用于将文本呈现为html标记的情况。例如,当您再次将文本输出到表单内的文本区域以允许更改它时,这并不适用。在这种情况下,您必须保留原始换行符,就像接收到的一样。

因此,您通常要做的是:将未更改的文本输入保存为接收到的文本。当再次将该文本输出到客户端时,比如从您之前保存它的数据库中读取它之后,您就知道了这种情况,即文本将如何呈现。也就是说,您要么转换现有的换行符,要么保留它们的原样。

您还可以通过<pre>...</pre>标记对包含换行符的未更改文本进行编码,以便将它们标记为呈现为预格式化。例如,当在html页面中显示源代码时进行THis。

票数 17
EN

Stack Overflow用户

发布于 2020-01-29 11:44:03

您可以执行以下操作:

代码语言:javascript
复制
white-space: pre-wrap;
overflow-wrap: break-word;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30593103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档