MDUtil

Markdownの太字

文字をアスタリスク2つで囲むと太字になります:**太字**。2種類の記号、太字と斜体の組み合わせ、括弧や句読点の横で太字にならないときの直し方を説明します。

要点

Markdownで文字を太字にするには?

文字の前後をアスタリスク2つで囲みます:**太字**。アンダースコア2つの __太字__ でも同じ結果になり、どちらもHTMLの <strong> 要素になります。アンダースコアは前後に空白か記号が必要で、かなや漢字に直接つなげると効かないため、日本語ではアスタリスクを使います。

Markdown
**この文字は太字になります**

__この文字も太字になります__

表示結果

この文字は太字になります

この文字も太字になります

太字の書き方と例

2種類の記号が生成するHTMLは同じで、違いは文字に直接つなげて使えるかどうかです。日本語では、括弧や句読点の横で太字が効かないという問題もよく起こります。

アスタリスク2つ

もっとも広く使える書き方です。CommonMark、GitHub、GitLab、Discord、Obsidian、Notion、Qiita、Zenn、HugoやJekyllなどの静的サイトジェネレーターで使えます。

Markdown
リリースは**今日**です。

表示結果

リリースは今日です。

アンダースコア2つ

結果はアスタリスクと同じですが、前後に空白か記号が必要で、文字に直接つなげると効きません。Discordでは __文字__ は下線になります。

Markdown
これは __太字__ です

これは__太字__です

表示結果

これは 太字 です

これは__太字__です

括弧や句読点の横で太字にならない

CommonMarkでは、** の内側が括弧や句読点で外側が文字のとき、太字の開始や終了として扱われません。**「今日」**です がそのまま表示されるのはこのためです。括弧を ** の外に出すか、** の外側に空白を入れます。GitHubなどCommonMarkに従うサービスで起こります。

Markdown
リリースは**「今日」**です。

リリースは「**今日**」です。

表示結果

リリースは**「今日」**です。

リリースは「今日」です。

単語の途中を太字にする

英単語の途中を太字にできるのはアスタリスクだけです。アンダースコアは snake_case_name のような名前を壊さないよう、単語の途中では無視されます。

Markdown
un**bel**ievable

un__bel__ievable

表示結果

unbelievable

un__bel__ievable

太字と斜体を同時に使う

アスタリスク3つで太字と斜体を同時にかけられます。2種類の記号を入れ子にしても書けます。日本語のフォントには斜体がないことが多く、ブラウザは文字を傾けて表示します。

Markdown
***太字かつ斜体***

**太字の中に _斜体_ を含める**

表示結果

太字かつ斜体

太字の中に 斜体 を含める

アスタリスクをそのまま表示する

記号の前にバックスラッシュを付けると、そのまま表示されます。バッククォートで囲んだ部分も書式が無効になります。

Markdown
\*\*これは太字になりません\*\*

`**これも太字になりません**`

表示結果

**これは太字になりません**

**これも太字になりません**

各サービスでの対応状況

アスタリスク2つはほぼどこでも使えます。違いが出るのはアンダースコアとアスタリスク1つの扱いです。

サービス対応補足
GitHub / GitLab対応README、Issue、PR、コメントで ** と __ の両方が使えます。
Discord違いあり**文字** は太字、__文字__ は下線です。
Slack違いありSlackのメッセージではアスタリスク1つで太字です:*文字*。
Obsidian対応両方の記号が使え、アスタリスクなら単語の途中も太字にできます。
Notion対応**文字** と入力すると、その場で太字になります。
Qiita / Zenn対応どちらも ** と __ が使えます。

よくある質問

** と __ に違いはありますか?

英単語全体を囲む場合は違いがなく、どちらも <strong> になります。違いは2つあり、文字に直接つなげて使えるのはアスタリスクだけなので これは__太字__です は太字になりません。また、Discordでは __文字__ は下線になります。

太字と斜体を同時に指定するには?

前後にアスタリスクを3つずつ置くか(***文字***)、**_文字_** のように入れ子にします。

太字にならないのはなぜですか?

よくある原因は4つです。記号と文字の間に空白がある(** 文字 **)、**「今日」**です のように ** の内側が括弧や句読点で外側が文字になっている、アンダースコアを文字に直接つなげている、コードブロックやバッククォートの中にある、のいずれかです。括弧の問題は、括弧を ** の外に出せば直ります。

GitHubで太字にするには?

GitHubはREADME、Issue、プルリクエスト、コメント、Wikiのいずれでも **文字** と __文字__ に対応しています。括弧や句読点の横で太字にならない問題はGitHubでも起こります。

Discordで太字にするには?

**文字** と入力します。Discordでは __文字__ は下線になるため、太字にはアスタリスクを使います。

コードブロックの中では太字になりますか?

なりません。コードブロックとバッククォートの中は入力したとおりに表示され、** はアスタリスク2つのままです。

アスタリスクを記号としてそのまま表示するには?

各アスタリスクの前にバックスラッシュを付けます。\*\*文字\*\* は **文字** と表示されます。バッククォートで囲んでも書式は無効になります。

Markdownの太字はどんなHTMLになりますか?

<strong> 要素になります。<b> が必要なときはHTMLタグを直接書きます。多くのMarkdownレンダラーはインラインHTMLに対応しています。