使用pre标签并设置white-space: pre-wrap可解决HTML代码块格式错乱问题。pre保留空格和换行,配合code标签增强语义,推荐样式为pre { white-space: pre-wrap; },避免用div模拟或动态插入时破坏结构。
在HTML中插入代码块时格式错乱,通常是因为浏览器默认会合并空白字符(如空格和换行)。要保持原始格式,必须正确使用 pre 标签 并配合 CSS 的 white-space 属性。
pre 是“预格式化文本”(preformatted text)的缩写。浏览器会按照它内部的原始排版显示内容,包括:
例如:
function hello() {
console.log("Hello");
}
即使用了 pre,有时仍需显式设置 white-space 来确保行为一致,尤其是在自定义标签或样式被覆盖时。
常用值包括:
ace: pre — 保留空格和换行,但不自动换行建议为代码块设置:
function hello() {
console.log("Hello World");
for (let i = 0; i < 10; i++) {
console.log(i);
}
}
为了让代码块稳定显示原始格式,请遵循以下做法:
...
pre { white-space: pre-wrap; }