Markdown記法チートシート

Markdownの記法を1ページで確認できます。左に書き方、右に実際の表示結果を並べ、どのブロックもワンクリックでコピーできます。

無料 · 登録不要 · ブラウザ内で完結最終更新

Markdownの基本記法にはどんなものがありますか?

Markdownは記号だけで文章を整形します。# が見出し、**文字** が太字、*文字* が斜体、> が引用、- や 1. がリスト、バッククォートがコード、[文字](URL) がリンク、![説明](URL) が画像です。表・フェンスコードブロック・タスクリスト・脚注・打ち消し線は拡張記法にあたります。

markdown
# 見出し1
**太字**  *斜体*  ~~打ち消し線~~

> 引用文

- 箇条書き
1. 番号付きリスト
- [ ] タスク

`インラインコード`
[リンク](https://example.com)
![代替テキスト](image.png)

| 列A | 列B |
| ---- | ---- |
| セル | セル |

h1の見出し、太字・斜体・打ち消し線、引用段落、箇条書き・番号付き・チェックボックスの各リスト、インラインコード、リンク、画像、そして2列の表が順に表示されます。

Markdown記法チートシートを使う

基礎記法

以下はJohn Gruberの最初の設計文書で定義された要素です。すべてのMarkdownアプリケーションが対応しています。

見出し

# 見出し1
## 見出し2
### 見出し3
#### 見出し4
##### 見出し5
###### 見出し6

見出し1

見出し2

見出し3

見出し4

見出し5
見出し6

段落

最初の段落です。段落と段落は空行で区切ります。

2つ目の段落です。*斜体*、**太字**、`等幅フォント`を混ぜて書けます。箇条書きは
このように書きます:
  * 1つ目
  * 2つ目
  * 3つ目

最初の段落です。段落と段落は空行で区切ります。

2つ目の段落です。斜体太字等幅フォントを混ぜて書けます。箇条書きは
このように書きます:

  • 1つ目
  • 2つ目
  • 3つ目

太字

**太字のテキスト**
__太字のテキスト__

太字のテキスト
太字のテキスト

斜体

*斜体のテキスト*
_斜体のテキスト_

斜体のテキスト
斜体のテキスト

太字+斜体

***太字かつ斜体のテキスト***
___太字かつ斜体のテキスト___
__*太字かつ斜体のテキスト*__
**_太字かつ斜体のテキスト_**

太字かつ斜体のテキスト
太字かつ斜体のテキスト
太字かつ斜体のテキスト
太字かつ斜体のテキスト

引用

> これは引用です
>
> 複数行にわたって書けます

> 引用は入れ子にもできます
> > このように

これは引用です

複数行にわたって書けます

引用は入れ子にもできます

このように

番号付きリスト

1. 1つ目の項目
2. 2つ目の項目
3. 3つ目の項目
   1. 字下げした項目
   2. 字下げした項目
4. 4つ目の項目
  1. 1つ目の項目
  2. 2つ目の項目
  3. 3つ目の項目
    1. 字下げした項目
    2. 字下げした項目
  4. 4つ目の項目

箇条書きリスト

- 1つ目の項目
- 2つ目の項目
- 3つ目の項目
  - 字下げした項目
  - 字下げした項目
- 4つ目の項目

* ハイフンの代わりに
* アスタリスクを使っても
* 結果は同じです
  • 1つ目の項目
  • 2つ目の項目
  • 3つ目の項目
    • 字下げした項目
    • 字下げした項目
  • 4つ目の項目
  • ハイフンの代わりに
  • アスタリスクを使っても
  • 結果は同じです

インラインコード

文の途中で `code` と書くとインラインコードになります。

文の途中で code と書くとインラインコードになります。

水平線

ハイフン3つ以上

---

アスタリスク3つ以上

***

アンダースコア3つ以上

___

ハイフン3つ以上


アスタリスク3つ以上


アンダースコア3つ以上


画像

![MDUtil Logo](/images/example-image.png)

![タイトル付きのMDUtil Logo](/images/example-image.png "MDUtil Logo")

MDUtil Logo

タイトル付きのMDUtil Logo

拡張記法

以下は基礎記法に機能を追加した要素です。対応していないMarkdownアプリケーションもあるため、使う前に公開先を確認してください。

| 記法 | 説明 | 例 |
| ----------- | ----------- | ------- |
| 見出し | ページの見出し | Header |
| 段落 | 本文のテキスト | Content |
| リスト | 箇条書き | • Item |

| 配置 | 左寄せ | 中央寄せ | 右寄せ |
| --- | :--- | :---: | ---: |
| 例 | Left | Center | Right |
| 数値 | Left | Center | Right |
記法説明
見出しページの見出しHeader
段落本文のテキストContent
リスト箇条書き• Item
配置左寄せ中央寄せ右寄せ
LeftCenterRight
数値LeftCenterRight

フェンスコードブロック

```javascript
function hello() {
  console.log("Hello, world!");
}

// コメント
hello();
```

```python
def hello():
    print("Hello, world!")

# コメント
hello()
```
function hello() {
  console.log("Hello, world!");
}

// コメント
hello();
def hello():
    print("Hello, world!")

# コメント
hello()

脚注

脚注を付けた文です。[^1]

[^1]: ここが脚注の本文です。

1つの文に複数の脚注 [^2] [^3] を付けることもできます。

[^2]: 2つ目の脚注の本文です。
[^3]: 3つ目の脚注の本文です。

脚注を付けた文です。1

1つの文に複数の脚注 2 3 を付けることもできます。

Footnotes

  1. ここが脚注の本文です。

  2. 2つ目の脚注の本文です。

  3. 3つ目の脚注の本文です。

見出しID

### 任意の見出し {#custom-id}

任意の見出し {#custom-id}

定義リスト

1つ目の用語
: 1つ目の用語の説明です。

2つ目の用語
: 2つ目の用語の説明です。

1つ目の用語
: 1つ目の用語の説明です。

2つ目の用語
: 2つ目の用語の説明です。

打ち消し線

~~このテキストには打ち消し線が付きます~~

このテキストには打ち消し線が付きます

タスクリスト

- [x] 導入を書く
- [x] サンプルを追加する
- [ ] インタラクティブな部品を作る
- [ ] ドキュメントを追記する
  • 導入を書く
  • サンプルを追加する
  • インタラクティブな部品を作る
  • ドキュメントを追記する

絵文字

:smile: :+1: :rocket: :octocat:

:smile: :+1: :rocket: :octocat:

ハイライト

この部分を ==ハイライト== したいです。

この部分を ==ハイライト== したいです。

下付き文字

H~2~O は水の化学式です。

H2O は水の化学式です。

上付き文字

2^10^ は 1024 です。

2^10^ は 1024 です。

Markdown記法リファレンス(要素別)

Markdownの記法は2層に分かれます。基礎記法はJohn Gruberが2004年に設計した当初からある要素で、どのパーサーでも動きます。拡張記法(表・フェンスコードブロック・タスクリスト・脚注など)は主にGitHub Flavored MarkdownとCommonMarkの拡張に由来し、対応状況はサービスごとに異なります。以下では要素のグループごとに、間違えやすいルールとあわせて整理します。

見出し・段落・改行

行頭のシャープ1〜6個で見出しレベルが決まり、シャープのあとの半角スペースは省略できません。段落と段落のあいだには空行が必要です。多くのパーサーは単独の改行を半角スペースとして扱うため、同じ段落内で改行したいときは行末に半角スペース2つ、またはバックスラッシュを置きます。

markdown
# 見出し1
## 見出し2
###### 見出し6

最初の段落です。

2つ目の段落です。前の行の末尾に半角スペースが2つあるので  
ここで改行されます。

h1・h2・h6の3つの見出しと独立した2つの段落が生成され、行末に半角スペースが2つある位置に<br>が入ります。

強調:太字・斜体・打ち消し線

記号1つで斜体、2つで太字、3つで両方が適用されます。単語全体を囲む場合はアスタリスクとアンダースコアが交換可能ですが、単語の途中で効くのはアスタリスクだけです。アンダースコアはsnake_caseのような識別子を壊さないよう除外されています。チルダ2つの打ち消し線はGFMの拡張で、コア記法ではありません。

markdown
*斜体* と _斜体_
**太字** と __太字__
***太字かつ斜体***
~~打ち消し線~~
un**bel**ievable

em、strong、strongとemの入れ子、del、そして単語の途中だけを太字にした結果が表示されます。

リスト・入れ子・タスクリスト

箇条書きは -、*、+ のいずれか、番号付きリストは「数字+半角ピリオド」で書きます。番号はレンダラーが振り直すため、すべての行を 1. と書いても問題ありません。入れ子にする項目は半角スペース2〜4個で字下げします。記号の直後に [ ] または [x] を置くと、GitHub互換のサービスではチェックボックスになります。

markdown
- 1つ目の項目
- 2つ目の項目
  - 入れ子の項目

1. 最初の手順
1. 次の手順
1. 最後の手順

- [x] 完了
- [ ] 未完了

1段階の入れ子を含む箇条書き、1から3まで自動で番号が振られた番号付きリスト、先頭がチェック済みのタスクリストが表示されます。

リンク・画像・参照スタイル

インラインリンクは角括弧に文言、丸括弧にURLを書きます。画像は先頭に感嘆符を付けるだけで、角括弧の中身がalt属性になります。参照スタイルではURLを文書の末尾にまとめられるため、長い段落でもソースが読みやすく保てます。GFMでは裸のURLも自動的にリンクになります。

markdown
[インラインリンク](https://example.com "タイトルは省略可")
![代替テキスト](/images/example.png)

[参照スタイルのリンク][docs]

[docs]: https://example.com/docs

title付きのリンク、alt付きの画像、そして文末の定義から解決されたもう1つのリンクが表示されます。

インラインコード・フェンスコードブロック・エスケープ

バッククォート1つでインラインコードになります。コード自体にバッククォートが含まれる場合は、バッククォート2つで囲みます。フェンスコードブロックはバッククォート3つで、直後に言語名を書くとシンタックスハイライトが効きます。コードの中身はMarkdownとして解釈されないため、記号をそのまま見せたいときの最も簡単な方法でもあります。

markdown
まず `npm install` を実行します。
バッククォートを含む場合は ``a `b` c`` と書きます。

```js
function hello() {
  console.log("Hello");
}
```

\*ここは斜体になりません\*

2つのインラインコード、ハイライト付きのJavaScriptブロック、そして*ここは斜体になりません*がアスタリスクごとそのまま表示されます。

表・脚注などの拡張記法

表にはヘッダー行と区切り行が必要で、区切り行にコロンを入れると配置を指定できます。脚注・定義リスト・見出しID・ハイライト・上付き文字・下付き文字はいずれも拡張記法です。Obsidianやドキュメント生成ツールでは便利ですが、非対応の環境では記号がそのまま表示されます。

markdown
| 左寄せ | 中央 | 右寄せ |
| :--- | :---: | ---: |
| a | b | c |

出典が必要な記述です。[^1]

[^1]: ここが脚注の本文です。

### 任意のアンカー {#custom-id}

左寄せ・中央寄せ・右寄せの3列の表、文末の注釈にリンクする上付きの脚注記号、そして見出しIDに対応した環境ではidがcustom-idのh3が表示されます。

どの記法がどこで使えるか

基礎記法はどこでも安全に使えます。実際に崩れるのは拡張記法のほうで、Obsidianでは完璧に表示される同じファイルが、チャットツールでは記号の羅列になることもあります。「拡張記法」のセクションにある書き方を使う前に、公開先の対応状況を確認してください。

プラットフォーム対応状況備考
GitHub / GitLab基礎+拡張の大半表、タスクリスト、打ち消し線、脚注、URLの自動リンクに対応。定義リスト、==ハイライト==、上下付き文字は非対応です。
Qiita基礎+拡張の大半表、タスクリスト、打ち消し線、脚注、数式に対応。:::note などの独自記法もあります。
Zenn基礎+拡張表、脚注、数式に加え、:::message やコンテンツ埋め込みなどの独自記法が使えます。
はてなブログ一部Markdownモードで基礎記法と表に対応。脚注は [^1] ではなく、はてな記法の (( )) を使います。
Discord一部見出し、リスト、引用、コードブロック、伏せ字、文言付きリンクに対応。表、画像、脚注は使えません。
Obsidian基礎+拡張==ハイライト==、コールアウト、[[ウィキリンク]]、脚注、LaTeX数式が追加で使えます。
Notion一部基礎記法は入力した時点で自動変換されます。脚注、定義リスト、見出しIDは貼り付け時に失われます。
VS Code プレビュー基礎+拡張CommonMarkに加えてGFMの表、タスクリスト、数式に対応。それ以外は拡張機能で補います。

このMarkdownチートシートの使い方

  1. 記法を探す

    どのパーサーでも動く要素は「基礎記法」、表・脚注・タスクリストなどGitHub以降に増えた要素は「拡張記法」から探します。

  2. 書き方と結果を見比べる

    各ブロックは左にMarkdownのソース、右に実際の表示結果を並べています。使う前に、その記号が何を生むのかを確認できます。

  3. スニペットをコピーする

    ブロック見出しのコピーボタンを押すと、その記法がそのままクリップボードに入ります。

  4. 貼り付けて書き換える

    サンプルの文言を自分の内容に差し替えます。拡張記法を使った場合は、先に対応状況の表で公開先を確認してください。

よくある質問

Markdownとは何ですか?

Markdownは、ふだん使う記号だけでプレーンテキストを整形する軽量マークアップ言語です。John Gruberが2004年に、ソースのままでも読みやすい文書を目指して設計しました。パーサーがHTMLに変換するため、同じ.mdファイルがGitHub、Obsidian、静的サイトジェネレーター、多くのチャットツールで同じように表示されます。

Markdownの基本記法と拡張記法の違いは?

基本記法は最初期からある要素で、見出し、段落、太字、斜体、引用、リスト、コード、水平線、リンク、画像が含まれます。これらはどのパーサーでも動きます。拡張記法はGitHub Flavored Markdownで広まったもので、表、フェンスコードブロック、脚注、定義リスト、打ち消し線、タスクリスト、絵文字、見出しIDなどが加わりますが、対応状況はサービスごとに異なります。

GitHubのMarkdown記法は標準と同じですか?

GitHubはCommonMarkの上位互換であるGitHub Flavored Markdownを使っています。基本記法の挙動は完全に同じで、GFMではさらに表、タスクリスト、打ち消し線、脚注、URLの自動リンク、フェンスコードブロックのシンタックスハイライトが使えます。一方で定義リスト、イコール記号によるハイライト、上付き・下付き文字には対応していません。

Markdownで改行が反映されないのはなぜですか?

同じ段落の中で改行するには、行末に半角スペースを2つ置いてから改行するか、行末にバックスラッシュを置きます。単独の改行は多くのパーサーで半角スペースとして扱われるため、そのままでは反映されません。空行を入れた場合は改行ではなく新しい段落になります。

Markdownで表を作るには?

縦線で区切ったヘッダー行を書き、次にハイフンの区切り行、そのあとにデータ行を1行ずつ書きます。区切り行のコロンで配置が決まり、:--- が左寄せ、:---: が中央寄せ、---: が右寄せです。表は拡張記法なので、GitHub Flavored Markdownに対応したパーサーが必要です。

MarkdownのなかにHTMLを直接書けますか?

多くの場合は書けます。kbdやsubのようなインラインタグは段落の中にそのまま書けますし、ブロックレベルのHTMLは前後を空行で挟めば動きます。ただしブロックレベルHTMLの内側では通常Markdownが解釈されません。GitHubなどはタグをサニタイズするため、スクリプトやstyle属性は取り除かれます。

Markdownの記号をそのまま表示するには?

記号の前にバックスラッシュを1つ置きます。エスケープできるのはMarkdownが特別扱いする文字で、バックスラッシュ、バッククォート、アスタリスク、アンダースコア、波括弧、角括弧、丸括弧、シャープ、プラス、マイナス、ピリオド、感嘆符、縦線が対象です。バッククォートで囲んでインラインコードにする方法でも書式は無効になります。

見出しの # のあとに半角スペースは必要ですか?

必要です。CommonMarkとGitHub Flavored Markdownでは、#見出し はただの文字列として表示され、# 見出し と書いてはじめて見出しになります。ほかのブロック記号も同じで、リスト項目はハイフンのあとに、引用は不等号のあとに半角スペースが必要です。

Markdownファイルの拡張子は何ですか?

標準の拡張子は.mdで、.markdownも同じように有効です。どちらもプレーンテキストなので、どのエディタでも開けます。GitHubはリポジトリ直下のREADME.mdを自動的に表示します。静的サイトジェネレーターは通常.mdを想定し、ファイル内にコンポーネントを含む場合は.mdxを使います。

同じMarkdownが別のサイトで表示が崩れるのはなぜですか?

サービスごとに実装している記法の範囲が違うためです。ハイライト、上付き文字、下付き文字、脚注、定義リストは標準ではなく拡張記法なので、Obsidianで正しく表示される内容がGitHubやチャットツールでは記号のまま出てしまうことがあります。ツールをまたいで使う文書は、基礎記法だけで書くのが安全です。