跳转至

图像

虽然图像是Markdown的一级公民,也是核心语法的一部分, 与他们合作可能很困难。MkDocs使用的材料 图像更舒适,提供图像对齐和图像样式 字幕。

配置

此配置增加了对齐图像、为图像添加字幕的能力 (将它们渲染为图形),并标记大图像以进行延迟加载。添加 将以下行转换为mkdocs.yml

markdown_extensions:
  - attr_list
  - md_in_html
  - pymdownx.blocks.caption

请参阅其他配置选项:

灯箱

如果您想在文档中添加图像缩放功能 glightbox插件是一个很好的选择,因为它完美地集成了 与MkDocs的材料。使用pip进行安装:

pip install mkdocs-glightbox

然后,在mkdocs.yml中添加以下行:

plugins:
  - glightbox

我们建议您查看可用的 [配置选项][glightbox选项]。

使用

图像对齐

启用[属性列表]后,可以通过添加 通过“align”属性指定相应的对齐方向,即“align=left”或 `align=right:

Image, aligned to left
![Image title](https://dummyimage.com/600x400/eee/aaa){ align=left }

Image title

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor massa, nec semper lorem quam in massa.

Image, aligned to right
![Image title](https://dummyimage.com/600x400/eee/aaa){ align=right }

Image title

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor massa, nec semper lorem quam in massa.

如果没有足够的空间来渲染图像旁边的文本 将拉伸到视口的整个宽度,例如在移动视口上。

为什么没有中心对齐?

[对齐][对齐]属性不允许居中对齐,这 这就是为什么MkDocs材料不支持此选项的原因。1相反, 可以使用[image titles]语法,因为字幕是可选的。

图片标题

遗憾的是,Markdown语法不提供对图像标题的原生支持, 但总是可以使用带有文字的[HTML中的Markdown]扩展名 `figure和figcaption标签:

Image with caption
<figure markdown="span">
  ![Image title](https://dummyimage.com/600x400/){ width="300" }
  <figcaption>Image caption</figcaption>
</figure>
Image caption

但是,Caption提供了一种添加字幕的替代语法 任何Markdown块元素,包括图像:

Image with caption
![Image title](https://dummyimage.com/600x400/){ width="300" }
/// caption
Image caption
///

图像延迟加载

现代浏览器提供[对延迟加载图像的原生支持][延迟加载] 通过loading=lazy指令,该指令在中降级为渴望加载 不支持的浏览器:

Image, lazy-loaded
![Image title](https://dummyimage.com/600x400/){ loading=lazy }

亮暗模式

如果您添加了[调色板切换]并希望显示不同的图像 浅色和深色配色方案,您可以附加“仅浅色”或“仅深色”` 哈希片段到图像URL:

Image, different for light and dark mode
![Image title](https://dummyimage.com/600x400/f5f5f5/aaaaaa#only-light)
![Image title](https://dummyimage.com/600x400/21222c/d5d7e2#only-dark)

Zelda light world Zelda dark world

使用[自定义配色方案]时的要求

内置的[配色方案]定义了上述哈希片段,但 如果你使用[自定义配色方案],你还必须添加 根据它是灯还是灯,在你的方案中跟随选择器 暗方案:

[data-md-color-scheme="custom-light"] img[src$="#only-dark"],
[data-md-color-scheme="custom-light"] img[src$="#gh-dark-mode-only"] {
  display: none; /* Hide dark images in light mode */
}
[data-md-color-scheme="custom-dark"] img[src$="#only-light"],
[data-md-color-scheme="custom-dark"] img[src$="#gh-light-mode-only"] {
  display: none; /* Hide light images in dark mode */
}

记住要改#!css“自定义灯光”#!css“自定义深色” 你的计划名称。


  1. 您可能还意识到'alig`属性已经 HTML5已经弃用,那么为什么还要使用它呢?主要原因是 可移植性——它仍然受到所有浏览器和客户端的支持,并且非常 不太可能完全删除,因为许多旧网站仍在使用它 确保具有这些属性的Markdown文件外观一致 在Material for MkDocs生成的网站之外查看。