spaceless
¶
使用 spaceless
过滤以删除空白 在HTML标记之间 ,而不是HTML标记中的空白或纯文本中的空白:
1 2 3 4 5 6 7 | {{
"<div>
<strong>foo</strong>
</div>
"|spaceless }}
{# output will be <div><strong>foo</strong></div> #}
|
你可以结合 spaceless
与 apply
标记对大量HTML应用转换:
1 2 3 4 5 6 7 | {% apply spaceless %}
<div>
<strong>foo</strong>
</div>
{% endapply %}
{# output will be <div><strong>foo</strong></div> #}
|
这个标记并不是为了“优化”生成的HTML内容的大小,而是为了避免HTML标记之间的额外空白,以避免在某些情况下浏览器呈现异常。
警告
由于过滤器在后台使用正则表达式,所以它的性能与所处理的文本大小直接相关(请记住,过滤器是在运行时执行的)。
小技巧
如果您想优化生成的HTML内容的大小,gzip压缩输出。
小技巧
如果您想创建一个标签,它实际上删除HTML字符串中的所有额外空白,请注意,这并不像看上去那么容易(想想 textarea
或 pre
例如标签)。使用像Tidy这样的第三方库可能是一个更好的主意。
小技巧
有关空白控件的详细信息,请阅读 dedicated section 了解如何在标记上使用空白控件修饰符。