问题:
vue中,将textarea进行v-model绑定后,在使用{{ }}显示时,换行不生效,直接显示成空格
代码:
代码语言:javascript复制<div>
{{summary}}
</div>
<textarea v-model="summary" cols="30" rows="10"></textarea>
运行效果:
解决方案:
在展示的div添加样式
代码语言:javascript复制.pre-line {
white-space: pre-line;
}
修改后代码:
代码语言:javascript复制<div class="pre-line">
{{summary}}
</div>
<textarea v-model="summary" cols="30" rows="10"></textarea>
运行效果:
由上图,可以看出,换行显示正常了
知识扩展:
white-space 属性设置如何处理元素内的空白。
这个属性声明建立布局过程中如何处理元素中的空白符。值 pre-wrap 和 pre-line 是 CSS 2.1 中新增的。
可能的值
值 | 描述 |
---|---|
normal | 默认。空白会被浏览器忽略。 |
pre | 空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。 |
nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 |
pre-wrap | 保留空白符序列,但是正常地进行换行。 |
pre-line | 合并空白符序列,但是保留换行符。 |
inherit | 规定应该从父元素继承 white-space 属性的值。 |