input.html
output.html
粘贴 HTML,一键以统一缩进美化。

把挤成一团的标记变成能读的东西

粘贴完整的 HTML 文档或片段,选 2 个还是 4 个空格缩进,点 Format。格式化器按嵌套层级把标签排开,闭合标签、同级元素、层层套娃的容器一眼就能对上。整个过程在你的浏览器里完成,不走"上传再转换"的 API。

<br><img><input> 这类 HTML 空元素不会增加嵌套深度。<script><style><pre><textarea> 这些原始文本块会整块保留,不会被逐行重排。

格式化是阅读辅助,不是 HTML 解析器

这是一个轻量、宽容的格式化器。它不会像浏览器的 HTML 解析器那样构建出经过纠错的文档树,也不会拿 HTML 规范去校验。清晰的缩进能帮你发现漏掉的闭合标签或不合法的嵌套,但格式化成功不代表标记就是合法的。

HTML 里的空白有时候是有意义的。格式化器会裁剪并重排标签之间的文本,所以当你在处理内联元素、预排版的邮件模板、模板引擎的定界符,或者任何空格位置很讲究的内容时,请仔细比对输出。替换生产环境的标记之前,先把原文留一份。

一个实用的流程

  1. 拿标记的副本去格式化。
  2. 检查内联文本和模板表达式周围的空白有没有被改动。
  3. 把结果丢进 HTML Viewer,做一次不执行脚本的可视化检查。
  4. 在你项目真正关心的浏览器或邮件客户端里测试最终文件。

XML 的自闭合标签和大小写规则不一样,请用 XML 格式化工具。如果你要做的是数据转换而不是标记排版,用 JSON 转 XML

FAQ

格式化器会执行脚本吗?

不会。这个页面只接收文本、返回格式化后的文本。想看渲染效果,请用单独的 viewer。

格式化成功能证明我的 HTML 是合法的吗?

不能。它只是为了可读性重排标记,既不做标准校验,也不修复结构错误的文档。

HTML 会被发到转换服务器吗?

不会,格式化代码在浏览器里跑。但不管用哪个网页编辑器,动手之前还是先把密钥和私密数据清掉。