Markdown(マークダウン) は、プレーンテキストで文書を書くための軽量マークアップ言語です。#** などの記号で見出し・太字・リストを表現し、最終的にHTMLに変換して表示します。

なぜMarkdownが使われるか

HTMLを直接書かなくても、シンプルな記号で文書の構造を表現できます。

<!-- HTMLで見出しと段落を書く場合 -->
<h2>Markdownとは</h2>
<p>プレーンテキストで文書を書く記法です。</p>
## Markdownとは

プレーンテキストで文書を書く記法です。
Markdownの方が記述量が少なく、読んでも意味が分かります。これが「人が読んでも書いても分かりやすい」というMarkdownの設計思想です。

主な記法一覧

見出し

# H1 見出し1
## H2 見出し2
### H3 見出し3
# の数が見出しレベルに対応します。

強調

**太字**
*斜体*
~~取り消し線~~
### リスト

- 箇条書き1
- 箇条書き2
  - 入れ子(スペース2つでインデント)

1. 番号付きリスト
2. 自動で番号が付く
### リンク

[リンクテキスト](https://example.com)
### 画像

![代替テキスト](画像のURL)
### コードブロック

バッククォート3つで囲みます。言語名を指定するとシンタックスハイライトが効くツールがあります。

````markdown

const hello = "Hello, World!";
console.log(hello);
````

インラインコード

文中にコードを入れる場合はバッククォート1つで囲みます。

`code` のように書きます。
### 引用

> これは引用文です。
> 複数行にわたる引用も書けます。
### テーブル

| 列1 | 列2 | 列3 |
|---|---|---|
| データ1 | データ2 | データ3 |
### 水平線

---
## HTMLとの違い

項目MarkdownHTML
書きやすさシンプルタグが多く冗長になりがち
読みやすさテキストのまま読めるタグが混在して読みにくい
表現の柔軟性限定的何でも表現できる
変換HTMLに変換して表示そのままブラウザで表示
コメント実装依存<!-- --> で記述可

MarkdownはすべてのHTMLの機能を代替できるわけではありません。複雑なレイアウトや特殊なスタイルが必要な場合はHTMLを直接書く方が適しています。多くのMarkdownエディタやCMSはHTML直書きとの混在も許容しています。

Markdownが使われている場所

GitHub / GitLab: READMEファイルやIssue・Pull Requestのコメントに使われます。.md 拡張子のファイルが自動でレンダリングされます。

はてなブログ・Qiita・Zenn: 技術系ブログの記事執筆に標準で採用されています。

Notion: ページ内でMarkdown記法の一部が使えます。**太字** と入力すると自動変換されます。

Slack / Discord: メッセージ内で *斜体* **太字** などの記法が使えます。

ChatGPT / Claude: AIが出力するテキストもMarkdown形式を使っており、チャット画面で自動レンダリングされます。

静的サイトジェネレーター: Jekyll・Hugo・Astroなどの静的サイト生成ツールはMarkdownファイルをHTMLに変換してWebサイトを生成します。

HTMLをMarkdownに変換する場面

既存のHTMLコンテンツをMarkdownで管理したい場合や、WebページのテキストをMarkdown形式で抽出したい場面があります。

たとえばブログをWordPressから静的サイトに移行する際や、参考サイトの内容をドキュメントに貼り付けたい場合などです。HTMLからMarkdownへの変換ツールを使うと、コピーアンドペーストで得られるHTMLタグを含む文字列をきれいなMarkdownに整形できます。