GitHubのREADME、ブログ記事、技術ドキュメントなど、エンジニアが文章を書く場面で広く使われている「Markdown(マークダウン)」。HTMLを直接書くよりもはるかに簡単に、見出しや太字、リスト、テーブルなどの書式を付けることができます。この記事では、Markdownの基本記法から応用的な使い方まで一覧でまとめました。
Markdownとは
Markdownは、2004年にJohn Gruberによって作られた軽量マークアップ言語です。プレーンテキストに簡単な記号を加えるだけで、見出し・太字・リスト・リンクなどの書式を表現できます。
Markdownの大きな特徴は以下の3つです。
- 記法がシンプル - 覚える記号が少なく、すぐに書き始められる
- 可読性が高い - マークアップしたままの状態でも読みやすい
- HTMLに変換できる - 最終的にHTMLに変換されてWebページとして表示される
Markdownファイルの拡張子は「.md」です。GitHub、Qiita、Zenn、Notion、Slackなど、多くのサービスがMarkdown記法をサポートしています。
見出し(h1〜h6)
見出しは先頭に「#」を付けて記述します。#の数が多いほど小さい見出しになります。
# 見出し1(h1)
## 見出し2(h2)
### 見出し3(h3)
#### 見出し4(h4)
##### 見出し5(h5)
###### 見出し6(h6)
「#」の後にはスペースを1つ入れるのがルールです。スペースがないと見出しとして認識されない場合があります。通常、h1はドキュメントのタイトルに使い、本文の見出しはh2から始めるのが一般的です。
テキスト装飾(太字・斜体・取り消し線)
テキストを装飾するための記法です。
| 記法 | 表示 | 説明 |
|---|---|---|
**太字** | 太字 | アスタリスク2つで囲む |
*斜体* | 斜体 | アスタリスク1つで囲む |
***太字斜体*** | 太字斜体 | アスタリスク3つで囲む |
~~取り消し~~ | チルダ2つで囲む |
これは**重要な**テキストです。
*イタリック*で強調します。
~~この情報は古いです~~
リスト(箇条書き・番号付き)
箇条書きリスト
「-」「*」「+」のいずれかとスペースを先頭に付けます。
- りんご
- みかん
- バナナ
- 台湾バナナ
- フィリピンバナナ
インデント(スペース2つまたは4つ)で入れ子にできます。
番号付きリスト
「数字.」とスペースで始めます。
1. 最初のステップ
2. 次のステップ
3. 最後のステップ
実際の数字に関係なく、自動的に連番が振られます。すべて「1.」と書いても正しく表示されます。
チェックリスト
タスク管理に便利なチェックリストも記述できます。
- [x] 完了したタスク
- [ ] 未完了のタスク
- [ ] もう一つの未完了タスク
リンクと画像
リンク
[表示テキスト](URL)
[Google](https://www.google.com)
// タイトル付き
[Google](https://www.google.com "Googleのトップページ")
画像
リンクの先頭に「!」を付けると画像になります。


代替テキスト(alt属性)は、画像が表示されない場合やスクリーンリーダーで読み上げる際に使用されます。アクセシビリティのために必ず設定しましょう。
コード(インライン・ブロック)
インラインコード
文中にコードを挿入する場合はバッククォート(`)で囲みます。
`console.log()` で値を出力できます。
コードブロック
複数行のコードはバッククォート3つで囲みます。言語名を指定するとシンタックスハイライトが適用されます。
```javascript
function greet(name) {
return `Hello, ${name}!`;
}
console.log(greet("World"));
```
対応言語の例: javascript, python, html, css, json, bash, sql, java, go, rust など。
テーブル(表)
パイプ(|)とハイフン(-)でテーブルを作成できます。
| 名前 | 年齢 | 職業 |
|------|------|------|
| 田中 | 30 | エンジニア |
| 佐藤 | 25 | デザイナー |
| 鈴木 | 35 | マネージャー |
列の配置指定
ハイフンの部分にコロン(:)を付けることで、テキストの配置を指定できます。
| 左寄せ | 中央寄せ | 右寄せ |
|:-------|:-------:|-------:|
| Left | Center | Right |
引用とその他の記法
引用
「>」を先頭に付けると引用ブロックになります。
> これは引用文です。
> 複数行にわたる引用も可能です。
>
> > 引用のネストもできます。
水平線
3つ以上のハイフン、アスタリスク、またはアンダースコアで水平線を引けます。
---
***
___
エスケープ
Markdownの記号をそのまま表示したい場合は、バックスラッシュ(\)を前に付けます。
\*アスタリスクをそのまま表示\*
\# シャープをそのまま表示
GitHubでの使い方
GitHubではMarkdownが広く使われており、独自の拡張記法(GitHub Flavored Markdown = GFM)もサポートしています。
README.md
リポジトリのトップに表示される説明文です。プロジェクトの概要、インストール方法、使い方などを記載します。
Issue・Pull Request
バグ報告や機能提案、コードレビューにMarkdownを使用できます。チェックリストでタスクを管理したり、コードブロックでソースコードを共有したりできます。
GFM独自の拡張機能
- チェックリスト -
- [x]でタスクの完了/未完了を管理 - テーブル - パイプ記法によるテーブル表示
- 取り消し線 -
~~text~~で取り消し線 - 自動リンク - URLをそのまま記述するとリンクになる
- 絵文字 -
:emoji_name:で絵文字を挿入
Markdownをリアルタイムでプレビューしてみましょう
Markdownプレビューツールを使ってみるまとめ
Markdownは、シンプルな記号でテキストに書式を付けられる軽量マークアップ言語です。見出し、太字、リスト、リンク、コードブロック、テーブルなど、ドキュメント作成に必要な機能が揃っており、GitHub、Qiita、Zennなど多くのプラットフォームで採用されています。
基本記法はとてもシンプルなので、実際に書きながら覚えるのが一番の近道です。当サイトのMarkdownプレビューツールを使えば、記法を書いてすぐに結果を確認できます。ぜひ活用してみてください。