我刚开始接触Markdown。我喜欢它,但有一件事困扰着我:如何使用Markdown更改图像的大小?
文档仅为图像提供以下建议:
![drawing](drawing.jpg)
如果可能的话,我希望图片也居中。我问的是Markdown将军,而不仅仅是GitHub是如何做到的。
我刚开始接触Markdown。我喜欢它,但有一件事困扰着我:如何使用Markdown更改图像的大小?
文档仅为图像提供以下建议:
![drawing](drawing.jpg)
如果可能的话,我希望图片也居中。我问的是Markdown将军,而不仅仅是GitHub是如何做到的。
当前回答
如果我们只是像这样使用普通的HTML图像标记,那么它是有效的,如果您使用引导来进行样式设置。我在Jekyll制作的网站上使用这个。
<img class="img-fluid" src="./img/face.jpg" alt="img-verification">
如果我们按照这个例子添加引导类,它会很好地工作。
其他回答
也许这一点最近有所改变,但Kramdown文档显示了一个简单的解决方案。
从文档中
Here is an inline ![smiley](smiley.png){:height="36px" width="36px"}.
And here is a referenced ![smile]
[smile]: smile.png
{: height="36px" width="36px"}
与Jekyll和Kramdown一起在github上工作。
Tieme的答案在大多数情况下都是最好的。
在我的例子中,我使用pandoc将markdown转换为乳胶。HTML标记在这里不起作用。
我的解决方案是重新实现includegraphics
\let\maxincludegraphics\includegraphics
\renewcommand{\includegraphics}[1]{\maxincludegraphics[max width=\textwidth]{#1}}
类似于在转换为HTML后使用CSS。
在Tiemes答案的基础上,如果您使用CSS 3,可以使用子字符串选择器:
此选择器将匹配以“-fullwidth”结尾的alt标记的任何图像:
img[alt$="-fullwidth"]{
width: 100%;
display: block;
}
然后,您仍然可以使用alt标记来描述图像。
上面的标记可能类似于:
![Picture of the Beach -fullwidth](beach.jpg)
我在Ghost markdown中使用过这个,而且效果很好。
通过纯向后兼容MD:
![<alt>](<imguri>#<w>x<h> "<title>")
其中w,h定义了要纵横适配的边界框,例如在Flutter包中https://pub.dev/packages/flutter_markdown
代码:https://github.com/flutter/packages/blob/9e8f5227ac14026c419f481ed1dfcb7b53961475/packages/flutter_markdown/lib/src/builder.dart#L473
重新考虑破坏兼容性的html解决方案,因为人们可能会使用本机/非html组件/应用程序来显示标记。
人们可以利用alt属性,该属性可以在几乎所有Markdown实现/渲染中设置,以及基于属性值的CSS选择器。优点是可以轻松定义一整套不同的图片大小(以及其他属性)。
标记:
![minipic](mypic.jpg)
CSS:
img[alt="minipic"] {
max-width: 20px;
display: block;
}