在Markdown中,有没有办法阻止图像被<p>标签包裹?

Joe*_*oel 8 html markdown image jekyll

我正在使用Jekyll,所有帖子都是.md格式以方便使用.问题是生成器会自动包装段落标记中的每一行.

line

<img>

line
Run Code Online (Sandbox Code Playgroud)

<p>line</p>

<p><img></p>

<p>line</p>
Run Code Online (Sandbox Code Playgroud)

这意味着我的图像被限制为我为段落设置的宽度,这会弄乱我的风格.

我有什么想法可以避免这种情况吗?我已经为图像尝试了html语法和markdown语法,但似乎没有任何效果.

谢谢!

mb2*_*b21 9

我不这么认为.最初的Markdown规范说:

段落只是一个或多个连续的文本行,由一个或多个空行分隔.

有可能想出一些漂亮的CSS来修复你的样式问题.

或者你可以试试这个黑客(在Pandoc中工作):

line

<div><img></div>

line
Run Code Online (Sandbox Code Playgroud)


Set*_*ton 8

图像是内联元素,旨在驻留在像段落一样的块级元素中.因此,Markdown解析器会纠正您的"错误"并将img包装在段落标记内.

将img标记包装到适当的块级元素中(如图所示)可以防止此行为.例如:

<figure><img src=""></figure>
Run Code Online (Sandbox Code Playgroud)

如果你想稍微自动化一些东西并且你不打算在Github页面上生成你的网站(不允许使用插件),那么你可以使用插件来帮助实现这一点,并使你的帖子中的图像插入更容易.我正在使用此插件的修改版本:

https://github.com/opattison/jekyll-figure-image-tag/blob/master/figure_image_tag.rb