跳到主要内容

Markdown 表格怎么写:语法、对齐与从 Excel 粘贴生成

讲清 Markdown 表格的竖线与分隔行语法,左中右对齐怎么设,手写为什么容易错位,以及从 Excel 或 CSV 粘贴一次生成整张表的做法。

发布于 作者 李雷
#markdown #表格 #github #excel #效率

Markdown 表格怎么写:语法、对齐与从 Excel 粘贴生成

写 README 或技术文档时,迟早会遇到要放一张表的场景:命令行参数说明、版本支持矩阵、价格对比。Markdown 的表格语法看着简单,真上手手敲到第三行就开始对不齐,横线数错一根,GitHub 渲染出来就成了一长行普通文字。这篇把语法、对齐和粘贴生成讲透。

表格语法:竖线分列,分隔行定基调

GitHub 风味 Markdown(GFM)的表格由三部分组成。第一行是表头,用竖线 | 把每列隔开。第二行是分隔行,每列至少三根横线 ---,它告诉解析器上面那行是表头。从第三行起是数据行,格式和表头一致。

一张最小的表长这样:

| 参数 | 说明 |
| --- | --- |
| -v | 输出详细日志 |
| -o | 指定输出文件 |

渲染出来就是带表头的两列表格。竖线是列的分界,横线那行是骨架,缺了它整段会被当成普通段落。这里有个最常被忽略的细节:表格上下必须各空一行,GFM 才认得出来,紧贴着上一段文字会渲染失败。

三种对齐:冒号写在横线哪一头

对齐方式不是靠在单元格里敲空格,而是在分隔行用冒号控制。:--- 是左对齐,---: 是右对齐,:---: 两头都加冒号是居中。规则就一条:冒号靠哪边,内容就往哪边靠。

| 名称 | 数量 | 单价 |
| :--- | :---: | ---: |
| 螺丝 | 100 | 0.05 |
| 垫片 | 240 | 0.02 |

第一列左对齐,第二列居中,第三列右对齐。数字列设右对齐尤其有用,小数点能对上一条线,读起来比左对齐清楚得多。手写时容易栽的坑就是想靠空格凑对齐,可 Markdown 会自动压缩空白,空格再多也没用,对齐只由分隔行的冒号决定。

手写表格的几个真实痛点

我自己给一个八参数的命令行工具写文档时,手敲到第五行发现某一列竖线少打了一根,整张表错位,回头一格一格数才找到。比这更烦的是改:CONTRIBUTING.md 里维护一张版本支持表,每次发版加一行,都得重新数分隔行的横线对不对得上列数。

还有一类隐蔽的坑,单元格里出现裸竖线 |。比如想在格子里写正则 a|b,这个竖线会被当成列的分界,把一格拆成两格,整行列数对不上就崩了。正确写法是转义成 a\|b,反斜杠让它渲染成字面竖线。这种细节手写时几乎记不住,工具也没法替你猜你到底是想分列还是想要字面文字,只能自己留意。

从 Excel 或 CSV 粘贴,一次生成整张表

真正省事的做法是别手写。在 Excel 或 Google Sheets 里复制一段区域时,剪贴板里其实是 Tab 分隔加换行的纯文本。把这段直接贴进 Markdown 表格生成器,点最左上的单元格按 Cmd+V 或 Ctrl+V,几百个格子会自动落进网格,不用一格一格手敲。

一张 40 行 5 列的报价表整片复制,粘一次,200 个单元格就位,再删掉文档里用不上的两列,实时输出就是排好的 GFM 表格。每列点一下就能切左中右对齐,分隔行的冒号自动生成,你不用记 :---: 写在哪头。改表也一样:把现有 Markdown 表格贴回去,在顶部加一行新数据,对齐标记自动重排,diff 保持干净的一行。

配套工具:HTML 与格式互转

如果你的源数据是一段 HTML 表格,想反过来转成 Markdown,可以用 HTML 转 Markdown,它会把 <table> 结构整理成竖线语法。手上是 CSV 文件、又需要结构化数据而非表格展示,CSV 转 JSON 能直接出可程序读取的格式。挑顺手的那个,别再手敲竖线。

把语法记牢:竖线分列、分隔行定骨架、冒号管对齐、裸竖线要转义、表格前后各留空行。剩下的交给粘贴生成,文档里的表格就不会再返工。


Made by Toolora · Updated 2026-06-13