web-dev-qa-db-ja.com

アンカータグターゲット属性の_self、_top、および_parentの違い

私は_blankがアンカータグと一緒に使用すると新しいタブを開くことを知っています。また、フレームセットを使用するときに使用する自己定義ターゲットがありますが、_parent、_self、および_topの違いを知りたい

68
Joseph Rex

これらの答えは良いものの、私見では完全に質問に答えているとは思わない。

アンカータグのターゲット属性は、ブラウザにアンカーの宛先のターゲットを伝えます。それらは、最初にアンカーを操作してドキュメントのフレームシステムにアンカーを向けるために作成されました。これは、CSSがHTML開発者の助けになる前のことです。

target="_self"はブラウザのデフォルトであり、最も一般的なターゲットはtarget="_blank"で、これはアンカーを新しいウィンドウで開きます(通常はブラウザの設定によってタブにリダイレクトされます)。 "_parent""_top"、およびframenameタグは、トレンドとしてのiframeサイト構築の時代に慣れていない人には謎のままです。

target="_self"これは、同じフレームでアンカーを開きます。紛らわしいのは、私たちは一般にフレームに書き込みをしないためです(HTML5ではframeおよびframesetタグは廃止されているため)、これは同じウィンドウ関数であるとみなされます。その代わりに、このアンカーがフレームにネストされている場合、サンドボックスモードのソート、つまりそのフレームでのみ開かれます。

target="_parent"互いに入れ子になっている場合、フレームの次のレベルで開きます

target="_top"これは、ネストされているすべてのフレームの外側で中断し、ブラウザウィンドウでトップドキュメントとしてリンクを開きます。

target="framenameこれはもともと廃止されましたが、HTML5で復活しました。これにより、問題の正確なフレームがターゲットになります。 nameは適切なメソッドでしたが、そのメソッドはid識別タグを使用して置き換えられました。

<!--Example:-->

<html>
<head>
</head>
<body>
<iframe src="url1" name="A"><p> This my first iframe</p></iframe>
<iframe src="url2" name="B"><p> This my second iframe</p></iframe>
<iframe src="url3" name="C"><p> This my third iframe</p></iframe>

<a href="url4" target="B"></a>
</body>
</html>
93
Brian Ellis

セクション 6.16フレームターゲット名 は、HTML 4.01仕様の意味を定義していますが、部分的に古くなっています。 HTML5ドラフトは「ブラウジングコンテキスト」についてより現実的に述べているのに対し、現代のブラウザーはこのコンテキストでウィンドウの代わりにタブを使用することが多いため、「ウィンドウ」を参照します。

簡単に言えば、_selfがデフォルト(現在のブラウジングコンテキスト、つまり現在のウィンドウまたはタブ)であるため、<base target=...>設定をオーバーライドすることのみが有用です。値_parentは現在のフレームの親であるフレームセットを参照しますが、_topは「すべてのフレームから抜け出し」、リンクされたドキュメントをブラウザウィンドウ全体で開きます。

16

target="_blank"

新しいウィンドウを開き、関連データを表示します。

target="_self"

同じフレームでウィンドウを開きます。これは、既存のウィンドウ自体を意味します。

target="_top"

リンクされたドキュメントをウィンドウ全体で開きます。

target="_parent"

親ウィンドウのサイズでデータを開きます。

10
Srinivas

_blankリンクを新しいウィンドウまたはタブで開きます_selfクリックした同じフレームでリンクを開きます_parent親フレームでリンクを開きます_topウィンドウの本文全体でリンクを開きます

関数評価の親フレームは、関数が呼び出された環境です。必ずしも現在の評価のフレーム番号よりも1つ小さい番号が付けられているわけではなく、関数が定義された環境でもありません。

0
Amaan Malik