HTMLでリンクを別タブで開く方法|target="_blank"の正しい使い方と注意点
プログラミング
公開日: 2026/03/19
目次
※この記事にはプロモーションを含みます
はじめに
WebサイトやブログなどのWebを運営していると、外部サイトへのリンクを「別タブで開きたい」と考える場面は少なくありません。その際に使用されるのが、aタグに指定するtarget=“_blank”属性です。
しかし、この属性は単に記述すればよいというものではなく、セキュリティやユーザー体験(UX)、SEOへの影響を理解したうえで適切に使う必要があります。 本記事では、target=“_blank”の基本的な仕組みから、安全に利用するためのrel属性の設定、実務で注意すべきポイントまでを体系的に解説します。初心者の方でも安心して実装できるよう、具体例を交えて分かりやすく説明します。
target=“_blank”とは何か
target属性の基本的な役割
target属性は、リンク先のページを「どこに表示するか」を指定するためのHTML属性です。主にaタグやformタグで使用され、クリック後の表示先を制御する役割を担います。
代表的な指定値は以下の通りです。
_self→ 同じタブ(デフォルト)_blank→ 新しいタブまたはウィンドウ_parent→ 親フレーム_top→ 最上位フレーム
通常はデフォルト値の_selfが適用されるため、別タブで表示したい場合は明示的に_blankを指定する必要があります。

_blankの意味と動作
_blankは「空白の閲覧コンテキスト」を意味し、新しいタブまたはウィンドウでリンク先を開く指定です。
<a href="https://example.com" target="_blank">外部サイトへ</a>
この記述により、ユーザーがリンクをクリックすると、現在のページはそのまま維持され、新しいタブでリンク先が表示されます。
特に以下のようなケースで有効です。
- 外部サイトへの参照リンク
- PDFや資料ダウンロードページ
- サービス利用規約などの補足情報
ただし、やみくもに別タブを使用するとUXを損なう可能性があるため、利用目的を明確にすることが重要です。
HTMLでリンクを別タブで開く書き方
aタグの基本構文
HTMLでリンクを設置する際の基本構文は以下の通りです。
<a href="URL">リンクテキスト</a>
主要な属性は次のとおりです。
href→ リンク先URLtarget→ 表示方法の指定rel→ リンクの関係性やセキュリティ設定
まずaタグの基本構造を理解したうえで、必要な属性を追加していきます。
target=“_blank”の記述方法
別タブで開くリンクを安全に実装するには次のように記述します。
<a href="https://example.com" target="_blank" rel="noopener noreferrer">
外部サイトを見る
</a>
ここで重要なのは、単にtarget=“_blank”を付与するだけでなく、rel属性もあわせて指定することです。
実務では次のように記述するのが一般的です。
- 外部リンク → target=“_blank” + rel属性
- 内部リンク → 原則として同一タブ
目的に応じて適切に使い分けることが重要です。
内部リンクと外部リンクの違い
内部リンクとは、自サイト内のページ間リンクを指します。一方、外部リンクはドメインが異なるサイトへのリンクです。
一般的な設計方針は以下の通りです。
| 種類 | 推奨表示方法 |
|---|---|
| 内部リンク | 同一タブ |
| 外部リンク | 別タブ(必要に応じて) |
内部リンクを別タブで開くと、ユーザーが複数タブを管理する負担が増える可能性があります。一方、外部リンクは自サイトからの離脱を防ぐ目的で別タブ表示が選択されることがあります。
rel属性が必要な理由
window.opener問題とは
target=“_blank”を使う際にrel属性を指定しないと、セキュリティ上の脆弱性が生じる可能性があります。これを「window.opener問題」と呼びます。
新しいタブで開いたページはwindow.openerを通じて元ページへのアクセス権を持ちます。悪意のあるサイトがこれを悪用すると、以下のような攻撃が可能になります。
- 元ページのURLを書き換える
- フィッシングページへリダイレクトする
- ユーザー情報を悪用する
この脆弱性を防ぐために、rel属性を適切に指定する必要があります。
rel=“noopener noreferrer”の役割
安全対策として推奨される記述は以下です。
rel="noopener noreferrer"
それぞれの役割は次の通りです。
noopener→ 新しいページから元ページへの参照を無効化noreferrer→ 参照元情報(リファラー)を送信しない
現在の主要ブラウザではnoopenerの指定が強く推奨されています。セキュリティを確保するためにも、target=“_blank”を使用する際は必ずrel属性を併用しましょう。
target=“_blank”を使う際の注意点
SEOへの影響

target=“_blank”自体が直接SEO評価を下げることはありません。しかし、過度な使用は間接的にユーザー体験を悪化させる可能性があります。
Googleはユーザー行動を重視するため、直帰率の増加や滞在時間の低下はSEOに間接的な悪影響を及ぼす可能性があります。外部リンクを適切に管理し、ユーザーが迷わない設計が重要です。
ユーザー体験(UX)への配慮
別タブ表示は便利である一方、ユーザーの意図を無視すると混乱を招きます。
配慮すべきポイントは次の通りです。
- 外部リンクであることを明示する
- アイコン表示などで別タブを示す
- 不要な別タブ遷移を避ける
特にスマートフォン環境では、タブ管理が煩雑になるため慎重な設計が求められます。
target=“_blank”のよくある質問
別ウィンドウとの違い
現在のブラウザでは、多くの場合「別ウィンドウ」ではなく「別タブ」で開かれます。表示形式はユーザーのブラウザ設定に依存するため、完全に制御することはできません。
そのため、「別タブで必ず開く」と断定するのではなく、「新しいタブまたはウィンドウで開く」と理解するのが正確です。
JavaScriptでの制御方法
JavaScriptを使用すれば、次のように制御することも可能です。
window.open('https://example.com', '_blank');
ただし、ポップアップブロックの影響を受ける可能性があるため、通常はHTMLのaタグでの実装が推奨されます。
まとめ
target=“_blank”は、外部リンクを別タブで開くための便利な属性ですが、単に指定するだけでは不十分です。セキュリティ対策としてrel=“noopener noreferrer”を必ず併用し、SEOやUXへの影響も考慮したうえで適切に使用することが重要です。
特にビジネスサイトや企業サイトでは、リンク設計の品質がユーザーの信頼に直結します。HTMLの正しい知識を身につけ、安全で使いやすいWebサイトを構築しましょう。
実践的なHTML/CSS知識やWeb制作スキルを体系的に習得したい方には、WEBMASTERSのプログラミングスクールがおすすめです。実務視点で学べるカリキュラムが整っており、現場で通用するWebスキルの習得に役立ちます。
正しい理解と適切な実装を積み重ねることが、信頼性の高いWebサイト構築への第一歩です。