我的Web应用程序生成HTML5输出,作为可变数量视图的串联。最终的结果是一堆压痕:
</div>
</div>
<div id="content">
<div id="question-header">
<h1>
我想缩进代码以隐藏单个视图的来源并使输出更容易理解。
我已经调查了Tidy PHP extension,但我尝试使用HTML5的所有尝试都产生了不正确的缩进。
答案 0 :(得分:7)
如果您想隐藏各个视图的来源,我建议您缩小HTML。这将有减少文档大小的额外好处。
至于使HTML输出更容易遵循,浏览器附带调试实用程序,以缩进格式解析和呈现DOM树,例如, https://trac.webkit.org/wiki/WebInspector,http://getfirebug.com/。
答案 1 :(得分:2)
最接近你在PHP领域寻找的是Dindent,https://github.com/gajus/dindent。 Dindent是一个HTML美化器,它使用正则表达式缩进标记。这与Tidy不同,Tidy充当DOM解析器。
来自文档:
有充分的理由不使用正则表达式来解析HTML。 但是,DOM解析器将重建整个HTML文档。它会添加 缺少标签,关闭打开的块标签,或删除任何不是的标签 有效的HTML。这就是Tidy所做的,DOM等等。这种行为是 调试HTML输出时不合需要。基于正则表达式的解析器不会 重建文档。 Dindent只会在没有缩进的情况下添加缩进 否则会影响标记。
Dindent唯一的目的是缩进HTML标记。它允许配置哪些元素作为内联处理,哪些元素作为块处理。