Markdown 表格是一种轻量级的文本标记方式,用于在纯文本文档中创建结构化的表格数据。它最早由 PHP Markdown Extra 引入,后被 GitHub Flavored Markdown(GFM)广泛采用,现已成为各种知识管理工具和静态网站生成器的标配功能。
| 表头1 | 表头2 | 表头3 || ----- | ----- | ----- || 单元格 | 单元格 | 单元格 || 单元格 | 单元格 | 单元格 |
每一行用竖线(|)分隔各列,第二行是分隔行,用于区分表头和数据行。分隔行中至少需要三个连字符(---)。竖线两侧的空格会被自动忽略,因此无需严格对齐列宽。
通过在分隔行中添加冒号(:)来控制列的对齐方式,这是 Markdown 表格最实用的特性之一:
| 语法 | 对齐方式 | 示例 |
|---|---|---|
:--- |
左对齐(默认) | 文本靠左显示 |
:---: |
居中对齐 | 文本居中显示 |
---: |
右对齐 | 文本靠右显示,适合数字列 |
尽管 Markdown 表格简洁易用,但它存在一些固有限制:无法合并单元格(不支持 rowspan 和 colspan);单元格内不能包含多行文本或换行符;不支持嵌套表格;无法设置单元格宽度、背景色等样式;表格内不能使用块级元素(如列表、代码块)。对于简单的数据展示,这些限制通常不成问题,但在需要复杂排版时则需要其他方案。
当 Markdown 表格无法满足需求时,可以直接在 Markdown 文档中嵌入 HTML 表格代码。大多数 Markdown 渲染器都支持内联 HTML,因此可以使用 <table>、<tr>、<td> 等标签实现单元格合并、多行内容、自定义样式等高级功能。不过需要注意的是,部分平台(如某些论坛或受限环境)可能会过滤 HTML 标签。
Markdown 表格被广泛应用于以下平台和工具中:GitHub / GitLab 的 README 和 Issue 中展示项目信息、API 参数;Notion、Obsidian、Typora 等笔记工具中整理知识;Hugo、Jekyll、Hexo 等静态博客生成器的文章内容;VuePress、Docusaurus 等文档站点中的技术文档;飞书、语雀等协作平台的文档编辑。掌握 Markdown 表格语法,能显著提升文档编写效率。
GFM 是目前最流行的 Markdown 表格实现标准。需要注意:GFM 要求表格必须有表头行和分隔行,不能只有数据行;行首和行尾的竖线可以省略,但建议保留以提高可读性;单元格内容中的竖线需要用反斜杠转义(\|);GFM 不支持表格标题(caption),如需标题可在表格前添加普通文本。此外,GitHub 对表格的渲染会自动添加边框和条纹样式,实际显示效果可能与本地编辑器有所不同。