javascript - 在 JavaScript 中用分隔符替换空格

标签 javascript html

我想要完全按照写入 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/

相关文章:

html - 我需要这些图像并排显示

html - 在 div 之外水平扩展背景

html - 使用 CSS 设置嵌套子无序列表的样式

javascript - 我想从列表中选择一个 mp3 并在 html5 中播放

javascript - 外部脚本在 Windows Phone App 8.1 中不起作用

javascript - AngularJS 中带有 jQ​​uery 的动态选择框

html - CSS3 Flexbox 使用特定布局的正确方法

css - Firefox 中输入字段之间的奇怪差距

javascript - 是否可以使用客户端 JavaScript 实现类似 Firebug "inspect element"DOM 元素荧光笔?

javascript - 当我使用 window.close ajax 调用时不起作用?