Markdown 容器

Markdown 容器是对 Markdown 语法的一个扩展,使用简单的语法就可以在页面中呈现丰富的效果。

除了原默认主题自带的容器外,本主题还新增了一些好用的自定义容器。

信息框容器

输入

  1. ::: tip
  2. 这是一条提示
  3. :::
  4. ::: warning
  5. 这是一条注意
  6. :::
  7. ::: danger
  8. 这是一条警告
  9. :::
  10. ::: note
  11. 这是笔记容器,在 <Badge text="v1.5.0 +" /> 版本才支持哦~
  12. :::

输出 ::: tip 这是一条提示 :::

::: warning 这是一条注意 :::

::: danger 这是一条警告 :::

::: note 这是笔记容器,在 以上版本才支持哦~ :::

以上容器均可自定义标题,如:

  1. ::: tip 我的提示
  2. 自定义标题的提示框
  3. :::

::: tip 我的提示 自定义标题的提示框 :::

布局容器

输入

  1. ::: center
  2. ### 我是居中的内容
  3. (可用于标题、图片等的居中)
  4. :::
  5. ::: right
  6. [我是右浮动的内容](https://zh.wikipedia.org/wiki/%E7%89%9B%E9%A1%BF%E8%BF%90%E5%8A%A8%E5%AE%9A%E5%BE%8B)
  7. :::
  8. ::: details
  9. 这是一个详情块,在 IE / Edge 中不生效
  10. ```js
  11. console.log('这是一个详情块')
  12. ```
  13. :::
  14. ::: theorem 牛顿第一定律
  15. 假若施加于某物体的外力为零,则该物体的运动速度不变。
  16. ::: right
  17. 来自 [维基百科](https://zh.wikipedia.org/wiki/%E7%89%9B%E9%A1%BF%E8%BF%90%E5%8A%A8%E5%AE%9A%E5%BE%8B)
  18. :::

输出 ::: center

我是居中的内容

(可用于标题、图片等的居中) :::

::: right 我是右浮动的内容 :::

::: details 这是一个详情块,在 IE / Edge 中不生效

  1. console.log('这是一个详情块')

:::

::: theorem 牛顿第一定律 假若施加于某物体的外力为零,则该物体的运动速度不变。

::: right 来自 维基百科 :::

注意:rightdetailstheorem这三个容器在v1.3.0 +版本才支持。center容器在v1.3.3 +版本才支持。

普通卡片列表

普通卡片列表容器,可用于友情链接项目推荐诗词展示等。

先来看看效果:

输出 ::: cardList

  1. - name: 麋鹿鲁哟
  2. desc: 大道至简,知易行难
  3. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200122153807.jpg # 可选
  4. link: https://www.cnblogs.com/miluluyo/ # 可选
  5. bgColor: '#CBEAFA' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  6. textColor: '#6854A1' # 可选,默认var(--textColor)
  7. - name: XAOXUU
  8. desc: '#IOS #Volantis主题作者'
  9. avatar: https://cdn.jsdelivr.net/gh/xaoxuu/assets@master/avatar/avatar.png
  10. link: https://xaoxuu.com
  11. bgColor: '#718971'
  12. textColor: '#fff'
  13. - name: 平凡的你我
  14. desc: 理想成为大牛的小陈同学
  15. avatar: https://reinness.com/avatar.png
  16. link: https://reinness.com
  17. bgColor: '#FCDBA0'
  18. textColor: '#A05F2C'

:::

上面效果在Markdown中的代码是这样的:

输入

  1. ::: cardList
  2. ```yaml
  3. - name: 麋鹿鲁哟
  4. desc: 大道至简,知易行难
  5. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200122153807.jpg # 可选
  6. link: https://www.cnblogs.com/miluluyo/ # 可选
  7. bgColor: '#CBEAFA' # 可选,默认var(--bodyBg)。颜色值有#号时请添加单引号
  8. textColor: '#6854A1' # 可选,默认var(--textColor)
  9. - name: XAOXUU
  10. desc: '#IOS #Volantis主题作者'
  11. avatar: https://cdn.jsdelivr.net/gh/xaoxuu/assets@master/avatar/avatar.png
  12. link: https://xaoxuu.com
  13. bgColor: '#718971'
  14. textColor: '#fff'
  15. - name: 平凡的你我
  16. desc: 理想成为大牛的小陈同学
  17. avatar: https://reinness.com/avatar.png
  18. link: https://reinness.com
  19. bgColor: '#FCDBA0'
  20. textColor: '#A05F2C'
  21. ```
  22. :::

语法

  1. ::: cardList <每行显示数量>
  2. ``` yaml
  3. - name: 名称
  4. desc: 描述
  5. avatar: https://xxx.jpg # 头像,可选
  6. link: https://xxx/ # 链接,可选
  7. bgColor: '#CBEAFA' # 背景色,可选,默认var(--bodyBg)。颜色值有#号时请添加引号
  8. textColor: '#6854A1' # 文本色,可选,默认var(--textColor)
  9. ```
  10. :::
  • <每行显示数量> 数字,表示每行最多显示多少个,选值范围1~4,默认3。在小屏时会根据屏幕宽度减少每行显示数量。
  • 代码块需指定语言为yaml
  • 代码块内是一个yaml格式的数组列表
  • 数组成员的属性有:
    • name名称
    • desc描述
    • avatar头像,可选
    • link链接,可选
    • bgColor背景色,可选,默认var(--bodyBg)。颜色值有#号时请添加引号
    • textColor文本色,可选,默认var(--textColor)

下面再来看另外一个示例:

输入

  1. ::: cardList 2
  2. ```yaml
  3. - name: 《静夜思》
  4. desc: 床前明月光,疑是地上霜。举头望明月,低头思故乡。
  5. bgColor: '#F0DFB1'
  6. textColor: '#242A38'
  7. - name: Vdoing
  8. desc: 🚀一款简洁高效的VuePress 知识管理&博客(blog) 主题
  9. link: https://github.com/xugaoyi/vuepress-theme-vdoing
  10. bgColor: '#DFEEE7'
  11. textColor: '#2A3344'
  12. ```
  13. :::

输出 ::: cardList 2

  1. - name: 《静夜思》
  2. desc: 床前明月光,疑是地上霜。举头望明月,低头思故乡。
  3. bgColor: '#F0DFB1'
  4. textColor: '#242A38'
  5. - name: Vdoing
  6. desc: 🚀一款简洁高效的VuePress 知识管理&博客(blog) 主题
  7. link: https://github.com/xugaoyi/vuepress-theme-vdoing
  8. bgColor: '#DFEEE7'
  9. textColor: '#2A3344'

:::

图文卡片列表

图文卡片列表容器,可用于项目展示产品展示等。

先看效果:

输出 ::: cardImgList

  1. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200529162253.jpg
  2. link: https://xugaoyi.com/
  3. name: 标题
  4. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容 # 描述,可选
  5. author: Evan Xu # 作者,可选
  6. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg # 头像,可选
  7. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200530100256.jpg
  8. link: https://xugaoyi.com/
  9. name: 标题
  10. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容
  11. author: Evan Xu
  12. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg
  13. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200530100257.jpg
  14. link: https://xugaoyi.com/
  15. name: 标题
  16. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容
  17. author: Evan Xu
  18. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg

:::

输入

  1. ::: cardImgList
  2. ```yaml
  3. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200529162253.jpg
  4. link: https://xugaoyi.com/
  5. name: 标题
  6. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容 # 描述,可选
  7. author: Evan Xu # 作者,可选
  8. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg # 头像,可选
  9. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200530100256.jpg
  10. link: https://xugaoyi.com/
  11. name: 标题
  12. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容
  13. author: Evan Xu
  14. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg
  15. - img: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200530100257.jpg
  16. link: https://xugaoyi.com/
  17. name: 标题
  18. desc: 描述内容描述内容描述内容描述内容描述内容描述内容描述内容描述内容
  19. author: Evan Xu
  20. avatar: https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg
  21. ```
  22. :::

语法

  1. ::: cardImgList <每行显示数量>
  2. ``` yaml
  3. - img: https://xxx.jpg # 图片地址
  4. link: https://xxx.com # 链接地址
  5. name: 标题
  6. desc: 描述 # 可选
  7. author: 作者名称 # 可选
  8. avatar: https://xxx.jpg # 作者头像,可选
  9. ```
  10. :::
  • <每行显示数量> 数字,表示每行最多显示多少个,选值范围1~4,默认3。在小屏时会根据屏幕宽度减少每行显示数量。
  • 代码块需指定语言为yaml
  • 代码块内是一个yaml格式的数组列表
  • 数组成员的属性有:
    • img图片地址
    • link链接地址
    • name标题
    • desc描述,可选
    • author作者名称,可选
    • avatar作者头像,可选

增强配置

为了适应更多需求场景,v1.9.0+版本的普通卡片和图文卡片容器添加了一些新的配置:

1. 普通卡片和图文卡片容器

target

  • 链接的打开方式,默认_blank

    • _self 当前页面

    • _blank 新窗口打开

2. 图文卡片容器

imgHeight

  • 设置图片高度,默认 auto

    • 带单位

objectFit

  • 设置图片的填充方式(object-fit),默认 cover

    • fill 拉伸 (会改变宽高比)
    • contain 缩放 (保持宽高比,会留空)
    • cover 填充 (会裁剪)
    • none 保持原有尺寸 (会留空或裁剪)
    • scale-down 保证显示完整图片 (保持宽高比,会留空)

lineClamp

  • 描述文本超出多少行显示省略号,默认1

3. 配置示例:

  1. ::: cardImgList
  2. ``` yaml
  3. config:
  4. target: _blank
  5. imgHeight: auto
  6. objectFit: cover
  7. lineClamp: 1
  8. data:
  9. - img: https://xxx.jpg
  10. link: https://xugaoyi.com/
  11. name: 标题
  12. desc: 描述内容
  13. author: Evan Xu
  14. avatar: https://xxx.jpg
  15. ```
  16. :::