mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6mobile wallpaper 7mobile wallpaper 8mobile wallpaper 9mobile wallpaper 10mobile wallpaper 11mobile wallpaper 12mobile wallpaper 13mobile wallpaper 14mobile wallpaper 15mobile wallpaper 16mobile wallpaper 17mobile wallpaper 18mobile wallpaper 19mobile wallpaper 20mobile wallpaper 21mobile wallpaper 22mobile wallpaper 23
1972 字
5 分钟
示例|图片画廊网格:语法与完整示例
2026-07-13

:::grid 是本博客的图片画廊容器指令。它能将普通的 Markdown 图片以统一的宽高比排列成响应式网格,并自动启用灯箱查看功能。适用于文章配图、截图、作品集或小型相册。

同一画廊中的图片使用相同的卡片比例。默认情况下,居中裁剪会填满每张卡片,使每一行保持整齐;点击图片可在灯箱中打开完整原图。每个画廊都有自己独立的灯箱分组,不会与文章中的其他图片混在一起。

本文既是功能文档,也是一个视觉测试页面。请分别在桌面、平板和手机宽度下查看示例,然后点击任意图片验证灯箱分组。

最简语法#

直接在 :::grid 和结尾的 ::: 之间编写 Markdown 图片:

:::grid
![图片描述](./image-1.webp)
![图片描述](./image-2.webp)
:::

每张图片必须独占一个段落,图片之间用空行分隔。画廊中只放图片;段落、列表和代码块请写在容器之外。

下面是最简语法的效果。不带参数时,网格默认使用三列、16/10 比例和 cover 模式。

最简语法效果:第一张图片
最简语法效果:第一张图片
最简语法效果:第二张图片
最简语法效果:第二张图片

参数一览#

所有参数写在开始指令后的花括号中::::grid{参数="值"}

参数允许的值默认值作用
columns16 的整数3桌面端每行的列数。无效值会回退为 3
aspect正数比例,如 16/93/41/116/10展示的卡片比例,而非原图比例。
fitcovercontaincover图片适配模式。cover 裁剪以填满;contain 保留完整图片,可能留白。

完整示例:

:::grid{columns="3" aspect="16/9" fit="cover"}
![第一张图片](./image-1.webp "可选的图片说明")
![第二张图片](./image-2.webp "可选的图片说明")
![第三张图片](./image-3.webp "可选的图片说明")
:::

下面的效果使用了上方的三列横图语法。请对比卡片比例、列数,以及标题优先于替代文字作为图片说明的方式:

参数示例:第一张横图
横图说明 1
参数示例:第二张横图
横图说明 2
参数示例:第三张横图
横图说明 3

图片说明与替代文字#

图片的替代文字既是无障碍替代文本,也是默认的图片说明。当图片带有可选标题时,标题会取代替代文字作为图片说明:

![用于无障碍访问的文字](./image.webp "显示在图片下方的说明")

同一行中,所有卡片的图片说明都会底部对齐。某条说明换行时,其他说明不会浮动到不同的高度。像 3:416:9 这样的比例文字可以直接写在正文、标题和替代文字中,无需转义。

这个示例演示了默认的替代文字说明、显式的标题说明,以及较长说明的底部对齐效果:

这张图片没有标题,所以替代文字就是图片说明
这张图片没有标题,所以替代文字就是图片说明
第二张方图,带有无障碍替代文字
这个标题会显示为图片说明
一张 3:4 海报的无障碍描述
这是一条较长的说明,用来检验说明换行时每条说明仍与卡片底部保持对齐

布局与裁剪#

桌面端布局使用 columns 指定的列数。宽度低于 768px 时,网格最多使用两列;低于 480px 时切换为单列。卡片容器固定 aspect 比例并裁剪圆角,图片会填满卡片,不带主题默认的图片外边距。

  • 选择 cover:推荐的默认值。图片从中心裁剪以填满卡片,使画廊看起来整齐一致。
  • 选择 contain:完整显示原图,不做裁剪。当图片比例与卡片不同时会露出主题背景;适用于不能裁剪的图片。
  • 若想既保留完整图片又不留白,可将 aspect 设置为接近原图比例,或将图片单独放入一个网格。

下面的示例将相同的竖图分别以 covercontain 放入 16/9 卡片。前者会裁剪图片;后者保留完整图片并留出背景空间。

:::grid{columns="3" aspect="16/9" fit="cover"}
![图片描述](./image-1.webp "可选的图片说明")
![图片描述](./image-2.webp "可选的图片说明")
:::
:::grid{columns="3" aspect="16/9" fit="contain"}
![图片描述](./image-1.webp "可选的图片说明")
![图片描述](./image-2.webp "可选的图片说明")
:::
第一张 cover 效果
Cover:居中裁剪
第二张 cover 效果
Cover:填满卡片
第三张 cover 效果
Cover:更整齐的布局
第一张 contain 效果
Contain:保留完整原图
第二张 contain 效果
Contain:可能出现留白
第三张 contain 效果
Contain:适合边缘细节

默认配置#

不带属性时,默认是三列、16/10 比例和 cover 裁剪。这三张竖图用于验证默认裁剪和图片说明。

:::grid
![图片描述](./image-1.webp)
![图片描述](./image-2.webp)
![图片描述](./image-3.webp)
:::
默认配置:竖图一
默认配置:竖图一
默认配置:竖图二
默认配置:竖图二
默认配置:竖图三
默认配置:竖图三

三列竖图:3:4#

使用 aspect="3/4" 时,三张竖图会填满比例一致的竖向卡片。如果原图比例不同,cover 会从中心裁剪其边缘。

:::grid{columns="3" aspect="3/4"}
![竖图描述](./portrait-1.webp)
![竖图描述](./portrait-2.webp)
![竖图描述](./portrait-3.webp)
:::
3:4 测试图片一
竖图 1
3:4 测试图片二
竖图 2
3:4 测试图片三
竖图 3

三列横图:16:9#

这一组演示了三列布局下常见的视频封面比例。当横图接近卡片比例时,裁剪量极小。

:::grid{columns="3" aspect="16/9"}
![横图描述](./landscape-1.webp)
![横图描述](./landscape-2.webp)
![横图描述](./landscape-3.webp)
:::
16:9 测试图片一
16:9 测试图片一
16:9 测试图片二
16:9 测试图片二
16:9 测试图片三
16:9 测试图片三

两列方图:1:1#

需要更大的预览卡片时,两列布局很合适。第三张图片会移到下一行。最后一行会保持网格轨道的宽度,而不是拉伸图片填满整行。

:::grid{columns="2" aspect="1/1"}
![方图描述](./square-1.webp)
![方图描述](./square-2.webp)
![方图描述](./square-3.webp)
:::
1:1 测试图片一
1:1 测试图片一
1:1 测试图片二
1:1 测试图片二
1:1 测试图片三
1:1 测试图片三

四列与 contain#

fit="contain" 不会裁剪原图。当图片比例与卡片比例不同时,会露出主题背景。这是有意为之,不是布局问题。它同时也验证了四列网格与独立灯箱分组互不干扰。

:::grid{columns="4" aspect="16/9" fit="contain"}
![图片描述](./image-1.webp)
![图片描述](./image-2.webp)
![图片描述](./image-3.webp)
:::
Contain:竖图一
Contain:竖图一
Contain:竖图二
Contain:竖图二
Contain:竖图三
Contain:竖图三

单列大图#

当图片需要更大的阅读尺寸时,适合使用单列。它在桌面、平板和手机上都保持单列,并且仍可在灯箱中查看原图。

:::grid{columns="1" aspect="16/9"}
![图片描述](./detail.webp)
:::
单列测试图片
单列测试图片

稀疏的五列行#

五列用于验证更高的支持列数。只有三张图片时,最后一行保持左对齐,而不是拉伸图片。

:::grid{columns="5" aspect="1/1"}
![缩略图描述](./thumb-1.webp)
![缩略图描述](./thumb-2.webp)
![缩略图描述](./thumb-3.webp)
:::
五列测试图片一
五列测试图片一
五列测试图片二
五列测试图片二
五列测试图片三
五列测试图片三

六列混合图片#

六列是当前的最大列数。混合横图和竖图可以验证 cover 裁剪、窄卡片上的图片说明以及密集的桌面布局。为了保证文章内容的可读性,通常两到四列更为合适。

:::grid{columns="6" aspect="1/1"}
![图片描述](./image-1.webp)
![图片描述](./image-2.webp)
![图片描述](./image-3.webp)
![图片描述](./image-4.webp)
![图片描述](./image-5.webp)
![图片描述](./image-6.webp)
:::
六列测试图片一
六列测试图片一
六列测试图片二
六列测试图片二
六列测试图片三
六列测试图片三
六列测试图片四
六列测试图片四
六列测试图片五
六列测试图片五
六列测试图片六
六列测试图片六

四列方图:1:1#

四张比例相同的方图是典型的四列布局。桌面端一行显示全部四张;平板收缩为两列,手机则为单列。

:::grid{columns="4" aspect="1/1"}
![方图描述](./square-1.webp)
![方图描述](./square-2.webp)
![方图描述](./square-3.webp)
![方图描述](./square-4.webp)
:::
方图一
方图一
方图二
方图二
方图三
方图三
方图四
方图四

六列横图:16:9#

六列横图非常适合缩略图预览、作品集和截图索引。即使原图比例略有差异,cover 也能让每张 16/9 卡片填充得整齐一致。

:::grid{columns="6" aspect="16/9"}
![横图描述](./landscape-1.webp)
![横图描述](./landscape-2.webp)
![横图描述](./landscape-3.webp)
![横图描述](./landscape-4.webp)
![横图描述](./landscape-5.webp)
![横图描述](./landscape-6.webp)
:::
横图一
横图一
横图二
横图二
横图三
横图三
横图四
横图四
横图五
横图五
横图六
横图六

三列竖图组:3:4#

这组六张竖图演示了人物、海报或手机截图的常见布局。图片排成两行三列,说明文字底部对齐。

:::grid{columns="3" aspect="3/4"}
![竖图描述](./portrait-1.webp)
![竖图描述](./portrait-2.webp)
![竖图描述](./portrait-3.webp)
![竖图描述](./portrait-4.webp)
![竖图描述](./portrait-5.webp)
![竖图描述](./portrait-6.webp)
:::
竖图一
竖图一
竖图二
竖图二
竖图三
竖图三
竖图四
竖图四
竖图五
竖图五
竖图六
竖图六

边缘含关键内容:cover 与灯箱#

这些图片的边缘附近含有重要的文字或细节。cover 能保持网格整齐,但可能裁掉这些边缘;点击图片即可在灯箱中查看未裁剪的原图。对边缘敏感的图片请使用清晰的说明文字,或使用下文的 contain

:::grid{columns="3" aspect="16/9" fit="cover"}
![边缘含关键内容](./critical-1.webp "打开灯箱查看完整的边缘内容")
![边缘含关键内容](./critical-2.webp "打开灯箱查看完整的边缘内容")
![边缘含关键内容](./critical-3.webp "打开灯箱查看完整的边缘内容")
:::
第一张边缘含关键内容的图片
打开灯箱查看完整的边缘内容
第二张边缘含关键内容的图片
打开灯箱查看完整的边缘内容
第三张边缘含关键内容的图片
打开灯箱查看完整的边缘内容

极端比例与 contain#

对于横幅、长截图等比例极端的图片,contain 会显示完整原图。与 cover 不同,它可能留出主题背景空间,但绝不会裁剪内容。

:::grid{columns="3" aspect="16/9" fit="contain"}
![完整截图描述](./wide-1.webp)
![完整截图描述](./wide-2.webp)
![完整截图描述](./wide-3.webp)
:::
极端比例图片一
极端比例图片一
极端比例图片二
极端比例图片二
极端比例图片三
极端比例图片三

透明图片#

透明图片会露出卡片的主题背景。这个单列 contain 示例便于检查透明区域、原图边缘和灯箱行为。

:::grid{columns="1" aspect="16/9" fit="contain"}
![透明图片描述](./transparent.webp)
:::
透明背景测试图片
透明背景测试图片

灯箱导航#

点击网格中的任意图片即可打开 Fancybox 灯箱。在灯箱中可以缩放、旋转、进入全屏、查看缩略图,并使用方向键导航。导航范围仅限当前的 :::grid 容器:例如,点击「16:9 测试图片一」只会浏览该小节中的另外两张横图。

同一篇文章中的普通 Markdown 图片仍然单独处理,不会被加入任何网格画廊。

检查清单#

  1. 每个网格中的图片尺寸一致,说明文字位于卡片下方。
  2. 悬停时图片轻微缩放;点击后可以缩放、旋转并使用键盘导航。
  3. 点击「16:9 测试图片一」后,灯箱只能浏览该小节中的另外两张横图。
  4. 宽度低于 768px 时,网格最多两列;低于 480px 时为单列。
  5. 「四列与 contain」中的竖图完整可见,有留白且无裁剪。
  6. 五列和六列网格在宽屏上保持指定列数,然后按响应式规则收缩为两列或单列。
分享

如果这篇文章对你有帮助,欢迎分享给更多人!

示例|图片画廊网格:语法与完整示例
https://luq-blog.xyz/posts/image-grid-demo/
作者
Luquiescene
发布于
2026-07-13
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录