\n不是在javascript中的文本之间创建新行

Rom*_*man 0 javascript

我有一段JavaScript应该在我的HTML中更新:

var StringContent = ({
    "a": 'Some String a',
    "b": 'Some string b',
    "c": 'Some string c',
});
Run Code Online (Sandbox Code Playgroud)

然后我希望通过以下方式在新行上显示每个字符串a,b,c:

document.getElementById("overlaycontent").innerHTML = (
    StringContent.a + '\n' +
    StringContent.b + '\n' +
    StringContent.c,
    )
Run Code Online (Sandbox Code Playgroud)

我现在得到的只是一条线.如何在不添加更多divs的情况下在文本中创建新行?我也尝试过\r,但这也无济于事.我查看了文档,但它一直在说使用\n.

Sam*_*rie 5

你应该替换为\n,<br>因为innerHTML需要一个HTML字符串(在HTML中,\n与相邻的空格合并但不产生回车,除了具有white-space:pre-wrapMaxArt所指示的样式的元素):

document.getElementById("overlaycontent").innerHTML = (
    StringContent.a + '<br>' +
    StringContent.b + '<br>' +
    StringContent.c,
)
Run Code Online (Sandbox Code Playgroud)

  • 这并不是"`\n'意味着什么",而是将空格折叠到一个空格,除非你将CSS`white-space`属性设置为`pre`或其他变体. (2认同)