Jekyll博客highligth代码产生无效的html

时间:2015-07-16 10:31:10

标签: ruby-on-rails ruby jekyll pygments kramdown

使用Jekyll,我有这个文件:

#_posts/2015-06-20-post.textile
blablabla:

{% highlight bash  %}
$ ruby example_blocks_1.rb
[0, 2, 4, 6]
hello world
hello world
hello world
hello world
hello world
hello world
{% endhighlight  %} 

bla bla bla

这是html制作的:

<p>blablabla:</p>
<p><div class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="gp">$ </span>ruby example_blocks_1.rb
<span class="o">[</span>0, 2, 4, 6]
hello world
hello world
hello world
hello world
hello world
hello world</code></pre></div></p>
<p>blablabla</p>

如果你把html放在这样的验证器中:https://validator.w3.org/nu/ 你可以看到:

Error: No p element in scope but a p end tag seen.

看来html不正确,你可以在这里看到引用:http://www.w3.org/TR/html401/struct/text.html#h-9.3.1 事实上,p标签不能包含块级标签

Jekyll为我制作了html,我无法解决这个问题。这似乎是一个错误。

这是我的_config.yml

markdown: kramdown
highlighter: rouge
你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

解决。问题是

之后的空白区域
  

}

示例:

{% endhighlight  %} 

在最后一个%之前有2个空格,在最后一个之后}还有其他空格(我们无法看到它们但它们存在)