HTML
aタグのtarget="_blank"でリンクが開かない
ポップアップブロッカーに止められている
こんな症状
target="_blank"を付けたのに新しいタブが開かない。ブラウザの設定やJSからの呼び出しが原因だよ。
まず試す
href に正しいURLが入っているか確認し、rel="noopener noreferrer" を付ける。
html
<a href="https://example.com" target="_blank" rel="noopener noreferrer">リンク</a>これで直らなければ、下の「自分のケース」を確認。
🔍 自分のケースはどれ?
- ✓href が # や空になっている
→ 遷移先がない。正しいURLを href に入れる。 - ✓JSの window.open() がブロックされる
→ クリックイベントの中で window.open() を呼ぶ(ユーザー操作なしだとブロックされる)。 - ✓セキュリティ警告が気になる
→ rel="noopener noreferrer" を付ける。
なぜ起きる?
ブラウザのポップアップブロッカーが新しいタブの表示を止めている場合があるよ。特にJavaScriptのwindow.open()はユーザー操作なしだとブロックされやすいんだ。また、href属性が空や"#"だとリンク先がないため遷移しないよ。
✕ エラーが起きるコード
<a href="#" target="_blank">リンク</a>
<!-- href が # なので遷移しない -->✓ 直したコード
<a href="https://example.com" target="_blank" rel="noopener noreferrer">リンク</a>
<!-- 正しい URL を指定 -->✅ 直ったか確認
リンクをクリックして新しいタブで目的のページが開けばOK。
この解決法は役立ちましたか?
🔗 関連するエラー
- リンクをクリックしても何も起きない — href 属性の書き忘れ
- 画像が表示されない — 画像パスが間違っている
- ページのレイアウトが崩れる — タグの閉じ忘れ
- 文字化けする — charset の指定がない
- フォームの送信ボタンが動かない — type="submit" の書き忘れ
📖 この問題を学べるレッスン
✏️ 手を動かして練習
📝 関連ブログ記事
- プログラミングのエラーメッセージの読み方 — エラーの読み方を基礎から解説
- HTMLとは?初心者向けにわかりやすく解説 — タグの書き方・ページ構造の基本
- HTMLのパス(相対パス・絶対パス)の書き方 — パスの書き方を初心者向けに解説