相关文章推荐
坏坏的眼镜  ·  <a>: アンカー要素·  6 月前    · 
坏坏的眼镜  ·  Tag 屬性| Microsoft Learn·  6 月前    · 
坏坏的眼镜  ·  <label>: The ...·  6 月前    · 
坏坏的眼镜  ·  Tag Helpers in forms ...·  6 月前    · 
This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

{"* "} Some parts of this feature may have varying levels of support.

Learn more

<a> HTML の要素( アンカー 要素)で、 href 属性 を用いて、別のウェブページ、ファイル、メールアドレス、同一ページ内の場所、または他の URL へのハイパーリンクを作成します。

<a> の内容は、リンク先を示すもの であるべきです href 属性が存在する場合、 <a> 要素にフォーカスがある状態で Enter キーを押すと起動します。

<li><a href="https://example.com">Website</a></li> <li><a href="mailto:m.bluth@example.com">Email</a></li> <li><a href="tel:+123456789">Phone</a></li> margin-bottom: 0.5rem;

この要素には グローバル属性 があります。

attributionsrc Experimental

ブラウザーが Attribution-Reporting-Eligible ヘッダーを送信することを指定します。サーバー側では、これはレスポンスで Attribution-Reporting-Register-Source ヘッダーの送信を開始し、 ナビゲーションベースのアトリビューションソース を登録するために使用します。

ブラウザーは、ユーザーがリンクをクリックすると、ナビゲーションベースのアトリビューションソース( Attribution-Reporting-Register-Source レスポンスヘッダーで指定された)に関連付けられたソースデータを格納されます。詳細は アトリビューション報告 API を参照してください。

この属性には設定することができる 2 つのバージョンがあります:

論理値、つまり attributionsrc の名前だけです。これは、 Attribution-Reporting-Eligible ヘッダーを、 href 属性がこの点を指すのと同じサーバーに送ることを指定します。同じサーバーでアトリビューションソースの登録を処理している場合は、これで問題ありません。

1 つ以上の URL を格納する値。例えば、以下のようなものです。

html
attributionsrc="https://a.example/register-source
https://b.example/register-source"

これは、リクエストされたリソースが制御するサーバーにない場合や、属性ソースを別のサーバーに登録する処理だけをしたい場合に有益です。この場合、attributionsrc の値として 1 つ以上の URL を指定します。リソースリクエストが発生すると、Attribution-Reporting-Eligible ヘッダーはリソース元に加えて attributionsrc を指定したURLにも送信されます。これらの URL は Attribution-Reporting-Register-Source で応答し、登録を完了することができます。

複数のURLを指定するということは、同じ機能に複数の属性ソースを登録できるということを意味しています。例えば、成功を測定しようとしている異なるキャンペーンがあり、異なるデータで異なるレポートを生成する必要があるかもしれません。

<a> 要素はアトリビューショントリガーとして使用することはできず、ソースとしてのみです。

download

ブラウザーがリンクされた URL をダウンロードとして扱うようにします。filename 値があってもなくても構いません。

値がない場合は、ブラウザーは様々なソースから生成されたファイル名/拡張子を提案します。

  • HTTP の Content-Disposition ヘッダー
  • URL のパスの最後の部分
  • メディア種別Content-Type ヘッダー、 data: URL の先頭、 blob: URLBlob.type から)
  • 値を定義すると、ファイル名として提案します。 / および \ はアンダースコアに変換されます。ファイルシステムがファイル名に禁止している文字は他にもあるかもしれませんので、ブラウザーは必要に応じてファイル名を調整します。

  • download同一オリジンの URL と、 blob:data: の各スキームでのみ動作します。
  • ブラウザーがダウンロードをどのように扱うかは、ブラウザー、ユーザーの設定、その他の要因によって異なります。ダウンロードを開始する前にユーザーにプロンプトが表示されたり、ファイルが自動的に保存されたり、外部のアプリケーションまたはブラウザー自体で自動的に開いたりすることがあります。
  • Content-Disposition ヘッダーが download とは異なる情報を持っていた場合、動作結果は様々です。
  • ヘッダーが filename を指定した場合、そちらが download 属性で指定されたファイル名より優先されます。
  • ヘッダーが inline の処分を指定している場合、 Chrome や Firefox 82 以降のバージョンでは、属性を優先してダウンロードとして扱います。Firefox の(82 以前の)古い版では、ヘッダーが優先され、コンテンツがインラインで表示されます。
  • ハイパーリンクが指す先の URL です。リンクは HTTP ベースの URL に限定されません。ブラウザーが対応するあらゆるプロトコルを使用することができます。

  • 電話番号を示す tel: URL
  • メールアドレスを示す mailto: URL
  • SMS テキストメッセージを示す sms: URL
  • javascript: URL による実行可能なコード
  • ウェブブラウザーがその他の URL スキームに対応していない可能性がある場合、ウェブサイトは registerProtocolHandler() を使用することができます。
  • 他にも、次のようにして URL 機能でリソースの特定の部分を記載することができます。

  • ページの節を示すフラグメント URL
  • テキストフラグメントで指定されたテキストの部分
  • メディアファイルの一部を示すメディアフラグメント
  • hreflang

    リンク先の URL における自然言語のヒントです。組み込まれている機能はありません。許容される値は、 lang グローバル属性と同じです。

    空白で区切られた URL のリストです。リンクをたどるとき、ブラウザーは POST リクエストを指定された URL に、 PING を本文として送信します。通常、トラッキングに使用されます。

    referrerpolicy

    リンクをたどるときにどれだけのリファラーを送信するかです。

  • no-referrer: Referer ヘッダーは送信されません。
  • no-referrer-when-downgrade: Referer ヘッダーはオリジンTLS (HTTPS) がない場合は送信されません。
  • origin: 送信されるリファラーは、参照元ページのオリジンのみに限定されます。すなわちスキームホスト名ポート番号です。
  • origin-when-cross-origin: 他のオリジンに送信されるリファラーは、スキーム、ホスト名、ポート番号に限定されます。同じオリジン内での移動の場合はパスが含まれます。
  • same-origin: リファラーは同じオリジンには送られますが、オリジン間リクエストではリファラー情報が含まれません。
  • strict-origin: プロトコルのセキュリティ水準が同じである場合 (HTTPS→HTTPS) は、文書のオリジンのみが送信されますが、安全性が下がる移動先 (HTTPS→HTTP) には送信しません。
  • strict-origin-when-cross-origin (default): 同一オリジンへのリクエストを行う際には URL 全体が送信され、プロトコルのセキュリティ水準が同じである場合 (HTTPS→HTTPS) はオリジンのみが送信されますが、安全性が下がる移動先 (HTTPS→HTTP) には送信されません。
  • unsafe-url: リファラーにはオリジンおよびパスが含まれます(ただしフラグメントパスワードユーザー名は含まれません)。この値は安全ではありません。オリジンとパスを TLS で保護されたリソースから安全ではないオリジンに漏洩させるからです。
  • リンク先の URL との関係を示す、空白で区切られたリンク種別のリストです。

    target

    リンク先の URL を表示する場所、閲覧コンテキスト(タブ、ウィンドウ、<iframe>)の名前で指定します。以下のキーワードは URL の読み込み先について特別な意味を持ちます。

  • _self: 現在の閲覧コンテキストです。(既定値)
  • _blank: ふつうは新しいタブですが、新しいウィンドウを使用するようにブラウザーを設定できます。
  • _parent: 現在の親の閲覧コンテキストです。親がない場合は、 _self と同じ振る舞いをします。
  • _top: 最上位の閲覧コンテキスト(現在のコンテキストの祖先である "最上位" のコンテキスト)です。親の閲覧コンテキストがない場合は、 _self と同じ動作をします。
  • _unfencedTop: 埋め込まれたフェンスフレームが最上位のフレームを移動できるようにします (つまり、他の予約された移動先とは異なり、フェンスフレームのルートを越えて移動します)。これがフェンスフレームのコンテキスト外で使用されてもナビゲーションは成功しますが、予約語のようには動作しないことに注意してください。
  • target="_blank"<a> 要素に設定すると、暗黙的に rel の動作は rel="noopener" が設定されたかのように動作し、 window.opener を設定しません。

    リンク先 URL の MIME タイプの形式を表すヒントです。組み込まれている機能はありません。

    非推奨の属性

    charset

    リンク先 URL の文字エンコーディングのヒントでした。

    この属性は廃止されており、ページ作者が使用すべきではありません。リンク先の URL で HTTP の Content-Type ヘッダーを使用してください。

    coords

    shape 属性とともに使用されます。カンマ区切りの座標のリストです。

    ページ内のリンク先の場所を定義するアンカーで必要でした。 HTML 4.01 では、値がまったく同じであれば id 属性と name 属性を <a> 要素内で同時に使用できました。

    代わりにグローバル属性の id を使用してください。

    この属性は、逆方向のリンクを指定します。 rel 属性と逆の関係を定義していました。これはとても紛らわしいため、非推奨になりました。

    shape

    イメージマップ内のハイパーリンクの領域の形状です。

    イメージマップについては
    <area> 要素を使用してください。

    リンクの内容は、文脈から外れたとしても、リンクの行き先を示すべきです

    アクセシビリティに対応していない貧弱なリンクテキスト

    よくある残念な間違いは、「ここをクリック」や「こちら」のみにリンクを設定していることです。

    html