GitHub Pages 使用 Jekyll 时,如果模版逻辑比较多,经常会产生大段的空格和连续的空行。

Liquid 支持空白控制来清除标签两侧的空格。 用法为:在标签中使用连字符”-“。 {{-, -}}, {%-, 和 -%}


Jekyll 模版中,即使标签不产生任何内容,渲染输出的 HTML 仍然会产生一个空白行。

输入

{% assign my_variable = "tomato" %}
{{ my_variable }}

在输出中,文字前面有一个空行:

输入


tomato

assign 标签前加一个连字符,就可以清除输出中的空白:

输入

{%- assign my_variable = "tomato" -%}
{{ my_variable }}

输出

tomato

当你想清除标签两侧的空白时,可以在标签的前后各加一个连字符。 用法为: ({%--%})

输入

{% assign username = "John G. Chalmers-Smith" %}
{% if username and username.size > 10 %}
  Wow, {{ username }}, you have a long name!
{% else %}
  Hello there!
{% endif %}

不使用`空白控制`的输出



  Wow, John G. Chalmers-Smith, you have a long name!

输入

{%- assign username = "John G. Chalmers-Smith" -%}
{%- if username and username.size > 10 -%}
  Wow, {{ username }}, you have a long name!
{%- else -%}
  Hello there!
{%- endif -%}

使用`空白控制`的输出

Wow, John G. Chalmers-Smith, you have a long name!

参考