我想要完全按照写入 HTML 元素的方式呈现文本 block 。因此,如果有多个连续的空格,我想渲染所有空格,而不是像默认那样将它们 chop 为单个空格。我不能简单地将空格替换为
,这样,嗯,就不会断线。我仍然希望换行自然发生。我将如何在 JavaScript 中执行此操作?
text.replace(/ /g, " ")
- 不会断线。
我也尝试过:text.replace(/ /g, " ")
,它给出了与默认行为相同的结果 - 将多个空格 chop 为单个空格。
最佳答案
这里正确的工具不是 JavaScript,而是 CSS(具体来说,white-space
属性值 pre-wrap
:
.no-collapse {
white-space: pre-wrap;
}
<div class="no-collapse">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nunc pellentesque felis id elementum maximus.
Cras facilisis dui felis, ut tincidunt ante sagittis ut. Ut pulvinar tortor eu massa porta, sagittis maximus nisl viverra. Donec vel luctus est. Integer semper commodo tortor, quis elementum ex fringilla vitae. Aliquam erat volutpat. Vestibulum quis risus elementum, ornare nulla non, scelerisque lorem.
Nam
at
ante
porttitor,
tempus
tellus
quis,
lacinia
velit.
</div>
关于javascript - 在 JavaScript 中用分隔符替换空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52981873/