Markdown表格

来自泡泡学习笔记
跳到导航 跳到搜索

一张表是由行和列组成的数据排列,包括一个表头行、一个分隔行将表头与数据分隔开,以及零个或多个数据行。


每一行由包含任意文本的单元格组成,其中内联元素用竖线(|)分隔开。为了阅读清晰和避免解析歧义,建议在单元格内容前后加上竖线。竖线和单元格内容之间的空格会被删除。表格中不能插入块级元素。


分隔行由仅包含连字符(-)的单元格组成,以及可选的前导或尾随冒号(:),或者两者都有,用于指示左对齐、右对齐或居中对齐。

| foo | bar |
| --- | --- |
| baz | bim |

Markdown表格-1.png


每一列中的单元格不需要匹配长度,尽管如果它们匹配长度会更容易阅读。同样,使用前导和尾随的竖线可能是不一致的:

| abc | defghi |
:-: | -----------:
bar | baz

Markdown表格-2.png


通过转义竖线,包括在其他内联元素中,可以在单元格的内容中包含竖线:

| f\|oo  |
| ------ |
| b `\|` az |
| b **\|** im |

Markdown表格-3.png


表格在第一个空行或者另一个块级结构的开始处被打断:

| abc | def |
| --- | --- |
| bar | baz |
> bar

Markdown表格-4.png


| abc | def |
| --- | --- |
| bar | baz |
bar

bar

Markdown表格-5.png


表头行必须与分隔行的单元格数量相匹配。如果不匹配,表格将无法被识别:

| abc | def |
| --- |
| bar |

Markdown表格-6.png


表格的其余行的单元格数量可以不同。如果单元格数量少于表头行的单元格数量,会插入空单元格。如果多于表头行的单元格数量,多余的部分将被忽略:

| abc | def |
| --- | --- |
| bar |
| bar | baz | boo |

Markdown表格-7.png


如果主体中没有行,HTML 输出中将不会生成 <tbody> 标签:

| abc | def |
| --- | --- |

Markdown表格-8.png