markdown tables gfm reference

Markdown 表:GFM 表語法完整指南

關於 Markdown 表格的一切 — GFM 語法、列對齊、複雜表格、渲染怪癖以及如何從 Word 文件建立它們。

W
WordToMD 團隊
·

Markdown 表格可讓您以可讀格式顯示結構化資料,並呈現為 HTML 表格。本指南涵蓋了完整的 GFM(GitHub Flavored Markdown)表語法、對齊選項、高階模式以及如何將 Word 表格轉換為 Markdown。

基本表語法

Markdown 表由三個部分組成:

  1. 標題行 — 列名稱
  2. 分隔行 — 帶管道的破折號,定義表格
  3. 資料行 — 內容
| Column 1 | Column 2 | Column 3 |
|---|---|---|
| Row 1, Col 1 | Row 1, Col 2 | Row 1, Col 3 |
| Row 2, Col 1 | Row 2, Col 2 | Row 2, Col 3 |

呈現為:

第 1 欄第 2 欄第 3 欄
第 1 行,第 1 列第 1 行,第 2 欄第 1 行,第 3 欄
第 2 行,第 1 欄第 2 行,第 2 欄第 2 行,第 3 欄

列對齊

在分隔行中使用冒號來控制對齊:

| Left aligned | Center aligned | Right aligned |
|:---|:---:|---:|
| text | text | text |
| longer text | longer text | longer text |
左對齊中心對齊右對齊
texttexttext
更長的文本更長的文本更長的文本
  • :--- — 左對齊(預設)
  • :---: — 中心對齊
  • ---: — 右對齊

表格單元格內的格式設定

大多數內聯 Markdown 格式都在表格單元格內工作:

| Element | Example |
|---|---|
| Bold | **bold text** |
| Italic | *italic text* |
| Code | `inline code` |
| Link | [click here](https://wordtomd.org) |
| Strikethrough | ~~deleted~~ |

什麼不起作用:多行內容、巢狀列表、塊級元素。

單元格中的管道字元

如果您需要文字管道 | 在單元格內,用反斜槓轉義:

| Flag | Description |
|---|---|
| `x \| y` | Bitwise OR operator |

無間距表格

管道周圍的間距是可選的。這是有效的:

|Column 1|Column 2|
|---|---|
|Cell|Cell|

但一致的間距使表格更具可讀性。大多數編輯器和 linter 更喜歡間隔格式。

空單元格

將管道之間的空間留空以放置空單元格:

| A | B | C |
|---|---|---|
| content | | content |
| | content | |

將 Word 表格轉換為 Markdown

Word表在您使用時自動轉換 WordToMD. The converter handles:

  • 標準網格 → GFM 管道表
  • 列寬 → 標準化(Markdown 不控制列寬)
  • 單元格內的文本格式 → 保留(粗體、斜體、連結)

不轉換的內容:

  • 合併單元格 (colspan/rowspan) — 摺疊到最近的單元格
  • 多行單元格內容 — 去除換行符
  • 巢狀表 — 內部表展平

處理複雜的詞表

合併單元格

Word 的合併單元格沒有 Markdown 等效項。選項:

  1. 重組 — 將合併的行拆分為單獨的表
  2. 使用 HTML — 大多數 Markdown 處理器接受 HTML 表格語法:
<table>
  <tr>
    <th colspan="2">Merged Header</th>
  </tr>
  <tr>
    <td>Cell 1</td>
    <td>Cell 2</td>
  </tr>
</table>

多行單元格內容

使用 <br> 用於單元格內的換行符(適用於 GitHub 和大多數平臺):

| Step | Description |
|---|---|
| 1 | Open the file<br>Make sure it's .docx format |
| 2 | Drop it on [WordToMD](/#converter) |

大桌子

對於包含許多列的表格,請考慮表格的格式是否正確。替代方案:

  • 定義列表(術語 + 描述)
  • 按類別劃分的多個較小的表格
  • 結構化資料的程式碼塊(JSON、YAML)

按平臺的表格渲染

平臺GFM 表對齊HTML 表格
GitHub✅✅✅
GitLab✅✅✅
Notion✅❌❌
Obsidian✅✅✅
GitBook✅✅✅
VS 程式碼預覽✅✅✅
Confluence(Markdown 宏)✅✅✅
傑基爾/雨果/阿斯特羅✅✅✅

輔助功能

為了更好的可訪問性,請確保表的標題行具有有意義的列名稱。螢幕閱讀器使用標題行來宣佈單元格上下文。

| Product | Price | Availability |
|---|---|---|
| Widget A | $9.99 | In stock |
| Widget B | $14.99 | Out of stock |

避免將表格用於佈局目的 - 僅將它們用於實際的表格資料。

FAQ

為什麼我的表格沒有呈現 - 它顯示為純文本? 分隔行( |---|---| 行)是強制性的。沒有它,解析器將無法識別表結構。

我可以有一個沒有標題行的表格嗎? 不在標準 GFM 中。標題行和分隔符是必需的。如果您不想要可見的標題,請使用空白標題: | | | 帶有分隔行。 具有高解析度影像的

為什麼我的 Word 表格在 WordToMD 中看起來正確,但在將它們貼上到其他地方後卻顯示錯誤? 問題通常是單元格中的尾隨空格或不一致的管道字元。大多數 Markdown 渲染器都很寬鬆,但複製貼上可能會引入不可見的字元。

如何以程式設計方式從資料建立表? 類似的庫 markdown-table (npm) 或 Python 的 tabulate 可以從陣列生成 Markdown 表。這對於批次轉換 CSV 或資料庫資料非常有用。

結論

Markdown 表格對於顯示結構化資料非常強大,並且在所有主要平臺上得到廣泛支援。對於以 Word 開頭的表格, WordToMD 自動將它們轉換為 GFM 語法。對於複雜的佈局,HTML 回退和上面的技巧可以為您提供所需的控制。