てもとツール
ガイド

Markdownの表の書き方|崩れる原因とセル内の改行・縦棒

Markdownの表は、見出しの行の下に「| --- |」の区切りの行を置き、セルを「|」で区切って書きます。区切りの行が無い・列の数が見出しと違う・全角の「|」を使った、のどれかだと表になりません。セルの中の縦棒と改行の書き方、多すぎたセルが黙って消える点もまとめました。

公開読了目安 約4分

この記事の要点

  • 見出しの行のすぐ下に、セルが「---」だけの区切りの行を置くと表になる
  • 区切りの行の列の数が見出しと違うと、表にならず文章として表示される
  • 全角の「|」は区切りにならないので、半角の「|」で書く
  • 見出しより多いセルは、表示されずに黙って消える
  • セルの中の縦棒は「\|」、改行はHTMLを使える表示先なら「<br>」で書く
目次

Markdownの表は、見出しの行・区切りの行・データの行を、半角の「|」でセルに分けて書きます。 見出しの下に | --- | --- | のような区切りの行を置くのが、表にするための条件です。

区切りの行が無い、列の数が合わない、全角の「|」を使った、のどれかがあると表になりません。 この記事では、表の書き方と崩れる原因を、表示した結果で確かめながら整理します。 表示は、GitHubの表の決まり(GFM)に沿って作られた marked 18.0.3 で確かめました。

いちばん小さい表の書き方

3行で書けます。

| 品名 | 価格 |
| --- | --- |
| りんご | 120 |

1行目が見出し、2行目が区切りの行、3行目からがデータです。 区切りの行のセルには、半角のハイフンだけを書きます。 ハイフンは1つでも表になります。

行の両端の「|」は省略しても表として読まれます。 ただ、付けておくほうが、どこまでが1つのセルか読みやすくなります。

文字の寄せをそろえる

区切りの行のハイフンにコロン(:)を付けると、列ごとに寄せを決められます。

  • 左寄せ: :---
  • 中央寄せ: :---:
  • 右寄せ: ---:

金額や個数の列を右寄せにすると、桁が縦にそろって比べやすくなります。

表にならない4つの原因

表にならないときは、表のつもりで書いた行が、そのまま文章として表示されます。 原因の多くは次の4つです。

  1. 区切りの行が無い: 見出しの行とデータの行だけだと、2行が1つの段落につながる
  2. 区切りの行の列の数が、見出しと違う: 見出しが3列で区切りの行が2列なら、表にならない
  3. 全角の「|」を使った: 日本語入力で全角のまま打った「|」は、区切りとして読まれない
  4. 行の頭に空白が4つある: 前に空行があれば、表ではなくコードの枠として表示される(空行が無ければ前の文の続きになる)

3つ目は、見た目で気づきにくい原因です。 どちらも縦の棒なので、字体によっては見分けにくくなります。 表にならないときは、入力を半角に切り替えて打ち直してください。

データの行のセルの数のずれは、黙って直される

区切りの行は列の数が合わないと表になりませんが、データの行は違います。 データの行は、見出しと列の数がずれていても表として表示されます。

  • セルが少ない行: 足りない分は、空のセルが足される
  • セルが多い行: 見出しより多いセルは、表示されずに消える

多い場合は、エラーも警告も出ません。 たとえば「または」と書いた3つ目のセルは、見出しが2列なら表のどこにも出ません。 セルの中に「|」を書いて、意図せず列が増えたときに起きやすい形です。

セルの中に縦棒を書く

セルの文字として「|」を書くときは、前に「\」を付けて \| と書きます。

| 記号 | 意味 |
| --- | --- |
| a \| b | aかb |

\ を付けないと、その「|」で新しいセルが始まります。 この例なら「a」と「b」が別のセルに分かれ、3つ目の「aかb」は先ほどの決まりで消えます。

コードとして囲んだ部分(` で囲んだ文字)の中でも、表の中では \| と書きます。 `a | b` と書くと、コードの途中でセルが分かれます。

セルの中で改行する

表の1行は、ファイルの1行で書く決まりです。 セルの途中でEnterを押すと、次の行が新しいデータの行になります。

行末に半角スペースを2つ付けても、セルの中の改行にはなりません。 段落の中での改行の仕方は、Markdownで改行されない原因の記事にまとめています。

セルの中で改行したいときは、改行したい位置に <br> と書きます。

| 項目 | 内容 |
| --- | --- |
| 住所 | 東京都<br>千代田区 |

<br> はHTMLのタグなので、表示先がHTMLのタグを受け付けるときだけ改行になります。 箇条書きや段落を分けた文章は、セルの中に入れられません。

Excelの表から作るときは変換に任せる

セルの中に「|」や改行を含む表を手で直すのは手間がかかります。 CSV→Markdownテーブル変換にCSVや、Excelからコピーした表を貼ると、Markdownの表が出ます。 そのとき、引用符で囲まれたセルの中の改行は <br> に、「|」は \| に置き換わります。

書いた表がどう表示されるかは、Markdownプレビューに貼ると確かめられます。 表の書き方に対応していない投稿先もあるので、貼る前に投稿先のプレビューでも確かめてください。

ツールの操作は、CSVをMarkdownの表に変換する使い方にまとめています。

関連記事

参考・出典

本記事は上記の公的機関・公式情報源を参考にしています。最新の情報は各リンク先をご確認ください。

あわせて読みたい

同じテーマ・関連ツールの記事です。