ホームページ  >  記事  >  ウェブフロントエンド  >  リンクのrelとtargetの違いを詳しく解説_体験交流

リンクのrelとtargetの違いを詳しく解説_体験交流

WBOY
WBOYオリジナル
2016-05-16 12:05:341872ブラウズ

target="_blank" の存在が必要かどうかは、まだ盲点にいる人が多いと思います。関連する文献を確認したところ、状況は私たちが考えていたものと異なることがわかりました。実際、target="_blank" は規格外ではなく、これは誤解であるため、rel と JS を使用した解決策は必要ありません。 rel と target の本当の意味を理解すれば、ここで論争が起こるべきではないことが理解できるでしょう。以下に、文献のレビューから得た知識を共有します。まず、target と rel の意味を理解しましょう:

target を使用すると、選択したハイパーリンク コンテンツを表示する場所を指定できます。つまり、リンクされたコンテンツがどのウィンドウに表示されるかということです。 target の属性値には、_blank、_self、_parent、_top という 4 つの予約名があります。 _blank は、ブラウザが常に、target="_blank" でリンクされたドキュメントを、新しく開かれた名前のないウィンドウにロードすることを意味します。ここでの「無名」の意味が理解できないかもしれません。実際、target は新しく開いたウィンドウに ID を割り当てることができます。例: target="name" これは、target="name" リンクを通じてロードされたドキュメントが "name" という名前のウィンドウに表示されることを意味します。 ID「name」を持つウィンドウが存在しない場合、ブラウザはリンクされたドキュメントを表示するために「name」という名前の新しいウィンドウを作成します。現在のウィンドウの ID が「name」の場合、リンクされたドキュメントが現在のウィンドウに表示され、元のコンテンツが置き換えられます。 _self は実際には現在のドキュメントを意味し、 のデフォルトのターゲットは _self です。この属性値は通常は使用されません。 _parent により、リンクされたドキュメントが親ウィンドウに表示されます。この属性値はフレーム構造内でのみ使用されます。トップレベル フレームの場合、その機能は _self と同じです。 _top はフレームにも適用されますが、その効果はフレームをクリアしてターゲット ドキュメントを表示することです。これは、フレーム構造からフレームレス構造に移行する場合に役立ちます。

これで、target がブラウザと密接に関係するターゲットによって表示される属性であることがわかりました。では、rel とは何ですか? なぜ多くの人がこれを target の代替属性とみなしているのでしょうか?それではrelについて知りましょう。実際には、rel が 1 つだけではなく、対応する rev という属性も存在します。これら 2 つの属性の意味は、ソース ドキュメントからターゲット ドキュメントへの関係、ターゲット ドキュメントからソース ドキュメントへの関係です。ここでのソース ドキュメントは、リンクが配置されている現在のドキュメントとして理解でき、ターゲット ドキュメントは、リンクによって開かれるドキュメントです。この時点で明確にしておきたいのですが、実際、rel と rev は、ターゲット ドキュメントを表示する方法のブラウザ関連の属性ではなく、ドキュメントの前のリンク関係です。

それでは、relとrevの関係は何でしょうか?以下にそれらを 1 つずつリストし、その意味を説明します:

next、次のドキュメントへのリンク、
prev、前のドキュメントへのリンク、
head、最上位ドキュメントへのリンクコレクション内;
toc、コレクションの目次へのリンク;
親、ソースの上のドキュメントへのリンク;
子、ソースの下のドキュメントへのリンク;
index、このドキュメントの索引へのリンク、
用語集、このドキュメントにリンクされた用語集、

ここで、next と prev はグループです。これは、現在のドキュメントとターゲット ドキュメント間の以前の関係が同レベルの関係であることを示しており、

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。