CSS属性 target-name: ページ遷移先を正確に制御する
target-name
属性は、<a>
、<area>
、または<form>
要素によってトリガーされるナビゲーションの読み込み先となるブラウジングコンテキスト(例:タブ、ウィンドウ、インラインフレーム)を指定できます。 つまり、リンク、フォーム送信、またはエリアリンクをどのウィンドウまたはタブで開くかを制御できます。
目次
構文と値
-
構文:
:target-name(name) { /* スタイルルール */ }
-
値:
<name>
: ターゲットとなるブラウジングコンテキストの名前。<a>
、<area>
、または<form>
要素のtarget
属性の値と一致します。
ブラウザの互換性
target-name
属性は、主要なブラウザで広くサポートされています。 以下の表は、さまざまなブラウザバージョンでのサポート状況を示しています。
ブラウザ | バージョン | サポート状況 |
---|---|---|
Chrome | 1.0+ | ✅ |
Firefox | 1.0+ | ✅ |
Safari | 3.1+ | ✅ |
Edge | 12+ | ✅ |
Internet Explorer | 8+ | ✅ |
Opera | 9.5+ | ✅ |
target-name の適用例
新しいウィンドウでリンクを開く
ユーザーがリンクをクリックしたときに、target-name
と target="_blank"
を組み合わせて使用すると、新しいウィンドウまたはタブでリンクを開くことができます。
指定したiframeにコンテンツを読み込む
target-name
を使用して <iframe>
要素の名前を指定し、リンクまたはフォーム送信の内容をその <iframe>
に読み込むことができます。
JavaScriptと連携して遷移先を制御する
JavaScript を使用して target
属性を動的に変更し、target-name
と組み合わせて使用することで、より柔軟な遷移制御を実現できます。
サンプルコード
新しいウィンドウでリンクを開く
<a href="https://www.example.com" target="_blank">新しいウィンドウでリンクを開く</a>
<style>
a[target="_blank"] {
/* 新しいウィンドウで開くリンクに適用するスタイル */
}
</style>
指定したiframeにコンテンツを読み込む
<iframe name="myIframe" src="https://www.example.com"></iframe>
<a href="https://www.another-example.com" target="myIframe">iframe内でリンクを開く</a>
<style>
a[target="myIframe"] {
/* 指定したiframe内で開くリンクに適用するスタイル */
}
</style>
よくある質問
-
Q:
target-name
はすべてのブラウザでサポートされていますか?
A: いいえ、すべてのブラウザでサポートされているわけではありません。 特に、Internet Explorer 7 以前のバージョンではサポートされていません。 ブラウザの互換性については、ブラウザの互換性セクションを参照してください。 -
Q:
target-name
とtarget
属性の違いは何ですか?
A:target
属性は、リンク、フォーム、またはエリアの遷移先となるブラウジングコンテキストを指定します。 一方、target-name
属性は、CSS を使用して、特定のターゲット名を持つブラウジングコンテキストのスタイルを設定するために使用されます。 -
Q:
target-name
を使用して、JavaScript で動的に遷移先を制御できますか?
A: はい、JavaScript を使用してtarget
属性を動的に変更し、target-name
と組み合わせて使用することで、より柔軟な遷移制御を実現できます。