rel=noopener
noopener
キーワードを <a>
, <area>
, <form>
の各要素の rel
属性に指定すると、ターゲットリソースへ移動する際、開いた元の文書へのアクセスを新しい閲覧コンテキストに許可しないことをブラウザーに指示します。開かれたウィンドウの Window.opener
プロパティプロパティは設定されません(null
を返します)。
これは、信頼されていないリンクを開くときに特に有効で、 Window.opener
プロパティを介して発信元の文書を改ざんできないようにするためです (詳細は rel=noopener についてを参照してください)。ただし、 HTTP の Referer
ヘッダーは(noreferrer
を同時に使用しない限り)提供されます。
なお、 noopener
を使用した場合、ターゲット名に _top
, _self
, _parent
以外の空でない名前を使用すると、新しいウィンドウやタブを開くかどうかの判断において、すべて _blank
と同様に扱われます。
メモ: target="_blank"
を <a>
要素に設定すると、暗黙的に rel
の動作が rel="noopener"
を設定した場合と同様、 window.opener
を設定しないようになりました。対応状況についてはブラウザーの互換性を参照してください。
仕様書
Specification |
---|
HTML Standard # link-type-noopener |
ブラウザーの互換性
html.elements.a.rel.noopener
BCD tables only load in the browser
html.elements.area.rel.noopener
BCD tables only load in the browser