「URLは見せたいけどクリックできなくしたい…」 「マークダウンの記法を説明文として表示したい…」 「一時的にリンクを無効化したい…」 「リンクっぽく見えるけど動作しないテキストを作りたい…」
マークダウンでドキュメントを書いていて、リンクを無効化したい場面はありませんか?
技術ドキュメントでマークダウンの記法を説明したり、URLを例として示したり、工事中のリンクを一時的に無効にしたりと、様々なケースでリンクの無効化が必要になります。
この記事では、マークダウンでリンクを無効化する様々な方法を、用途別に完全解説します。
エスケープの基本から、プラットフォーム別の特殊な方法まで、すべてマスターしていきましょう!
リンクを無効化する5つの基本方法

方法1:バックスラッシュでエスケープ
最も基本的な方法:
\[これはリンクではありません\](https://example.com)
結果:[これはリンクではありません](https://example.com)
(上記のテキストがそのまま表示される)
部分的なエスケープ:
\[リンクテキスト](https://example.com) ← [だけエスケープ
[リンクテキスト\](https://example.com) ← ]だけエスケープ
方法2:インラインコードで囲む
バッククォートを使用:
`[リンクテキスト](https://example.com)`
`https://example.com`
これで、マークダウン記法やURLがコードとして表示されます。
方法3:コードブロックを使用
フェンスドコードブロック:
```
[リンクテキスト](https://example.com)
https://example.com
```
インデントによるコードブロック:
[リンクテキスト](https://example.com)
https://example.com
4つ以上のスペースでインデントすると、コードブロックになります。
方法4:HTMLエンティティを使用
特殊文字をHTMLエンティティに置換:
[リンクテキスト](https://example.com)
または
[リンクテキスト](https://example.com)
[
→[
または[
]
→]
または]
方法5:生のHTMLを使用
spanタグで囲む:
<span>[リンクテキスト](https://example.com)</span>
<span>https://example.com</span>
HTMLタグ内では、マークダウン記法が無効になります。
URLの自動リンク化を防ぐ方法
自動リンクの無効化
多くのマークダウンパーサーは、URLを自動的にリンクに変換します。これを防ぐ方法:
方法1:途中にゼロ幅スペースを挿入
https://example.com
(URLの途中に見えないゼロ幅スペース U+200B を挿入)
方法2:バックスラッシュでエスケープ
https\://example.com
方法3:インラインコードで囲む
`https://example.com`
方法4:尖括弧を使わない
<!-- 自動リンクになる -->
<https://example.com>
<!-- 自動リンクにならない -->
![]()
Example Domain (環境による)
マークダウン記法を説明文として表示
ドキュメント内でマークダウンを説明する
記法の説明例:
マークダウンでリンクを作るには、以下の記法を使います:
`[表示テキスト](URL)`
例:
`[Googleへのリンク](https://www.google.com)`
より複雑な例の表示:
```markdown
# 見出し1
## 見出し2
[リンク](https://example.com)

- リスト項目1
- リスト項目2
```
4つのバッククォートを使うと、3つのバッククォートを含むコードブロックも表示できます。
一時的にリンクを無効化する方法
コメントアウトを使った無効化
HTMLコメントで囲む:
<!-- [一時的に無効なリンク](https://example.com) -->
通常のテキスト <!-- [ここだけ無効](https://example.com) --> 続きのテキスト
コメント化の活用例:
## 関連リンク
- [公開済みページ](https://example.com/page1)
<!-- - [準備中のページ](https://example.com/page2) -->
- [別の公開済みページ](https://example.com/page3)
取り消し線でビジュアル的に無効化
視覚的に無効であることを示す:
~~[廃止されたリンク](https://old.example.com)~~
<s>[利用できないリンク](https://example.com)</s>
これは実際にはリンクは有効ですが、視覚的に「使えない」ことを示せます。
プラットフォーム別の特殊な方法

GitHub/GitLab
GitHubでの特殊な記法:
# プレーンテキストとして表示
`[text](url)` のように書きます
# 実際のリンクを無効化
\[text\]\(url\)
# URLの自動リンク化を防ぐ
`https://example.com`
Obsidian
Obsidianの内部リンクを無効化:
# 通常の内部リンク
[[ページ名]]
# 無効化
\[\[ページ名\]\]
`[[ページ名]]`
Notion
Notionでの無効化:
/code
ブロックを使用- インラインコード
`
で囲む - プレーンテキストブロックを使用
Discord
Discordでのリンク無効化:
# 埋め込みを防ぐ
<https://example.com>
# 完全に無効化
`https://example.com`
\https://example.com
JavaScript/CSSでの無効化(HTML出力時)
CSSでクリックを無効化
ポインターイベントを無効に:
.disabled-link {
pointer-events: none;
cursor: default;
color: #999;
text-decoration: line-through;
}
HTMLでの使用:
<a href="https://example.com" class="disabled-link">無効なリンク</a>
JavaScriptで動的に無効化
特定の条件でリンクを無効化:
// すべてのリンクを無効化
document.querySelectorAll('a').forEach(link => {
link.addEventListener('click', (e) => {
e.preventDefault();
return false;
});
});
// 特定のクラスを持つリンクのみ無効化
document.querySelectorAll('a.disabled').forEach(link => {
link.removeAttribute('href');
link.style.cursor = 'default';
});
用途別ベストプラクティス

ケース1:マークダウンの記法を説明
推奨方法:インラインコード
リンクを作るには `[テキスト](URL)` と書きます。
ケース2:URLを文字列として表示
推奨方法:インラインコード
APIのエンドポイント: `https://api.example.com/v1/users`
ケース3:工事中のリンク
推奨方法:コメントアウト + 説明
- [機能A](/feature-a)
- 機能B(準備中)<!-- [機能B](/feature-b) -->
- [機能C](/feature-c)
ケース4:無効であることを明示
推奨方法:取り消し線 + 注記
~~[旧ドキュメント](https://old.example.com)~~ ※現在は利用できません
新しいドキュメントは[こちら](https://new.example.com)
よくある問題と解決方法
問題1:エスケープが効かない
原因と対策:
# 効かない例
\[text](url) ← 片方だけのエスケープ
# 正しい例
\[text\](url) ← 両方エスケープ
\\[text\\](url) ← 二重エスケープ(環境による)
問題2:プレビューと実際の表示が異なる
確認ポイント:
- マークダウンパーサーの種類(CommonMark、GFMなど)
- プラットフォーム固有の拡張機能
- HTMLサニタイズの設定
問題3:コピペ時にリンクが有効になる
対策:
- プレーンテキストとしてコピー
- リッチテキストエディタの設定確認
- 受け取り側でプレーンテキストとして貼り付け
静的サイトジェネレーターでの設定
Jekyll
_config.ymlでの設定:
kramdown:
auto_ids: false
parse_block_html: true
parse_span_html: true
Hugo
リンクのレンダリングをカスタマイズ:
// layouts/_default/_markup/render-link.html
{{ if .Page.Params.disableLinks }}
{{ .Text }}
{{ else }}
<a href="{{ .Destination | safeURL }}">{{ .Text }}</a>
{{ end }}
Gatsby
remarkプラグインでカスタマイズ:
// gatsby-config.js
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
{
resolve: `gatsby-remark-disable-links`,
options: {
// カスタム設定
}
}
]
}
}
実用的な例とテンプレート
技術ドキュメントのテンプレート
# APIリファレンス
## エンドポイント
基本URL: `https://api.example.com/v1`
## 認証
Authorizationヘッダーに `Bearer {token}` を設定
## リクエスト例
GET https://api.example.com/v1/users Authorization: Bearer your-token-here
## 非推奨のエンドポイント
~~`/old/endpoint`~~ → 代わりに `/new/endpoint` を使用してください
マークダウンチュートリアル
# マークダウン入門
## リンクの作り方
基本的な記法:
`[表示テキスト](URL)`
実例:
```markdown
[Googleへのリンク](https://www.google.com)
```
これは [Googleへのリンク](https://www.google.com) のように表示されます。
まとめ – 状況に応じた最適な無効化方法を選ぼう!
マークダウンでリンクを無効化する方法、用途によって様々でしたね!
今日学んだポイント:
✅ バックスラッシュ(\)でエスケープが基本
✅ インラインコードで記法を表示
✅ コメントアウトで一時的に無効化
✅ HTMLエンティティで特殊文字を回避
✅ プラットフォームごとに挙動が異なる
用途別の推奨方法:
- 記法の説明 → インラインコード
- URLの表示 → バッククォート
- 一時無効 → コメントアウト
- 視覚的無効 → 取り消し線
- 完全無効 → エスケープ
目的に応じて適切な方法を選択し、読みやすいドキュメントを作成しましょう!
これで、マークダウンでのリンク制御を完全にマスターできました!📝
コメント