我正在通过 WordPress 站点中的 PHP 以表单形式从用户那里获得输入(特别是地址),并且我希望能够显示我收集到的具有相同换行符的信息(分离出地址的不同组成部分)不同的页面。如果我将它放入 textarea,它会正确显示,但如果我获取数据并将其回显到 div 中,它不会保持换行符。我能做些什么?
问问题
17615 次
5 回答
23
你想利用空白 css 属性http://www.w3schools.com/cssref/pr_text_white-space.asp
所以你会有类似的东西
<p class="whitespace"><?= $input_from_textarea ?></p>
用CSS:
.whitespace {
white-space: pre-wrap;
}
不要手动清理您的输入,用中断标签替换新的行元素。它使您的数据的可重用性降低,并且工作量更大。
您可以使用 php 函数nl2br()
,但它不像通过 css 操作显示那样为您提供更多控制。
于 2013-06-04T05:58:36.970 回答
9
您可以使用echo nl2br( $string)
转换\n
为<br>
HTML 换行符。
于 2013-06-04T06:02:19.293 回答
2
HTML 将任意数量的空格(非换行空格除外)包括新行折叠到一个空格。为了维护新行,您需要用标签替换新行<br>
或使用<pre>
标签或使用旨在控制此行为的空白 CSS 规则之一。
于 2013-06-04T05:57:44.947 回答
2
使用 nl2br() 方法来获取您的 . nl2br($文本); 有关更多查询,请查看此 http://www.php.net/manual/en/function.nl2br.php
于 2013-06-04T05:59:36.710 回答
0
以<pre>
标签为例。但它看起来会很丑陋。
或将换行符替换为<br/>
于 2013-06-04T05:53:51.220 回答