Skip to content

布局与高度

包侧内建的是一组偏保守的最小高度默认值,放进文档站以后,横向流程图往往还是会显得太扁

优先级

高度决策顺序如下

  1. 行内 fence 参数
  2. CSS 变量覆盖
  3. 插件配置回退值
  4. 内置默认值

推荐做法

更稳妥的做法是先给插件一个回退值,再用站点级 CSS 变量抬高默认高度,最后把行内参数留给少数特殊图表

ts
md.use(markdownItMermaidEnhanced, {
  minHeight: '160px',
})
css
.VPDoc {
  --mermaid-it-min-height: 220px;
}

这样不需要替换整份 styles.css,也能在不同层级按需调整

按页面覆盖

VitePress 可以用 pageClass 为单页单独放大默认高度

md
---
pageClass: mermaid-roomy
---
css
.mermaid-roomy {
  --mermaid-it-min-height: 280px;
}

按单个图表覆盖

某一张图需要更高的展示空间时,直接在 fence 行内写 min-height 即可

md
```mermaid min-height="320px"
flowchart LR
  A --> B
```

示例

Loading diagram…

为什么这种分层更稳

  • 包侧默认值继续保持克制
  • 文档站可以拿到更宽松的全站默认高度
  • 页面级与单图级都还能继续覆盖,不需要改运行时代码