【问题标题】:For Some Reason Markdown Images won't show surrounded by HTML由于某种原因,Markdown 图像不会显示为被 HTML 包围
【发布时间】:2017-02-21 21:19:51
【问题描述】:

因此,由于某种原因,当我将 markdown 图像标签包裹在 <div><section> 中时,它只会输出 markdown 代码。 http://d.pr/i/bPvI(截图)

<section class="photoset">

![Image of San Francisco bay bridge from beach](/images/san-francisco.jpeg)

</section>

但是当我删除 HTML 代码时,它会显示图像,但会被包裹在段落标签中,这不是问题。我理解 Jekyll 对图像这样做的原因。对于我,这说得通。我只是不明白为什么在将它包装在 HTML 标签中之前它对我有用时它不起作用。

已编辑

<section class="photoset">

![Image of San Francisco bay bridge from beach](/images/san-francisco.jpeg)

</section>

<p><img src="/images/san-francisco.jpeg" alt="Image of San Francisco bay 
bridge from beach" /></p>

上面的代码我试过看看它是否可以在没有部分标签的情况下工作,它确实有效。因此,出于某种原因,是 HTML 标签阻止了降价标签的工作。

【问题讨论】:

    标签: html markdown jekyll


    【解决方案1】:

    这是 Markdown 本身的故意选择,而不是 Jekyll 的错。来自inline HTML Markdown 文档:

    请注意,Markdown 格式化语法不会在块级 HTML 标记中处理。例如,您不能在 HTML 块中使用 Markdown 样式的 *emphasis*。

    如果要添加块级 HTML,其内容也必须完全用 HTML 编写。

    【讨论】:

    • 好的,所以如果我想为帖子添加图像,但用 photoset 类包围它,这样它就不会限制段落样式。我想知道我该怎么做。
    • 您可以按照stackoverflow.com/a/35276926/368697 中的建议尝试markdown="1"
    • 哦,那就更好了。我不知道 markdown="1"。
    【解决方案2】:

    你需要告诉 Kramdown 给process kramdown syntax in block HTML tags

    _config.yml 中:

    kramdown:
      # parse markdown inside block-level HTML tag
      parse_block_html: true
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-04
      • 1970-01-01
      • 2017-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多