大家做前端的时候,相信都遇到过,利用多行文本控件 textarea 录入数据,多段落回车换行,但是在页面展示时,换行就不出效果了,有什么办法可以解决呢,下面给大家介绍两种个人觉得最简单的方法。
一、JS替换法
<input id="content" value="${content}" type="hidden" />
<span id="contentshow"></span>
<script>
var element = $("#content").val();
var temp = element.replace(/\n/g,'<br/>');
$("#contentshow").html(temp);
</script>
二、CSS样式法
#contentshow { white-space: pre-wrap; }
无有搞错,就是这么简单,下面我们温故一下
white-space 属性设置如何处理元素内的空白。
值 | 描述 |
---|---|
normal | 默认。空白会被浏览器忽略。 |
pre | 空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。 |
nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 |
pre-wrap | 保留空白符序列,但是正常地进行换行。 |
pre-line | 合并空白符序列,但是保留换行符。 |
inherit | 规定应该从父元素继承 white-space 属性的值。 |