javascript - 换行符未在 HTML 中呈现

标签 javascript

我正在动态创建 H5 并渲染一个字符串。我无法创建新线路。这是我到目前为止所尝试过的:

var h5 = document.createElement('h5');
h5.appendChild(document.createTextNode("City: Chicago\nState: Illinois"));
document.body.appendChild(h5);

我也尝试过<br>但它只是按原样呈现。如何创建新行?

最佳答案

问题

非 HTML 的换行符仅在 pre 元素和具有特殊 pre 样式的元素中呈现

解决方案

使用white-space: pre;样式

使用单独的 CSS 规则

var h5 = document.createElement('h5');
h5.appendChild(document.createTextNode("City: Chicago\nState: Illinois"));
document.body.appendChild(h5);
h5 {
  white-space: pre;
}

仅 JavaScript 解决方案

var h5 = document.createElement('h5');
h5.style.whiteSpace = 'pre';
h5.appendChild(document.createTextNode("City: Chicago\nState: Illinois"));
document.body.appendChild(h5);

希望这有帮助!

关于javascript - 换行符未在 HTML 中呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56156663/

相关文章:

javascript - JQuery/Canvas/Javascript ...我可以使用什么来用鼠标将图像 move 或旋转到 div 中?

javascript - 变量显示在一个函数中,但没有显示在另一个 Jquery 中

javascript - 为什么从 text/html 文档创建元素比从 application/xml 文档创建元素慢?

javascript - 如何在我的 html 页面中使用 javascript 函数重定向到分区(<div>)

javascript - 如何更改 Vuetify 数据表中的标签 "Sort by"?

javascript - 删除来自 API 的 +- 号 - 在 Angular6 模板中

javascript - 如果不是 Internet Explorer,则仅运行脚本

javascript - 对话框不是函数错误

javascript - 输入元素上的 Angular 2 双数据绑定(bind)不起作用

javascript - 正则表达式匹配所有 Vular 分数