HTMLコード<a name="some_bookmark">text</a>
は、ページの特定のセクションへのリンクを作成するのに非常に役立ちます(例:page.html#some_bookmark
)。ただし、W3C仕様では、name
タグのa
属性が「廃止」としてマークされるようになりました。
これが事実である場合、何が好ましいですか?新しい<bookmark>
タグなどはありますか?
id=""
属性は任意の要素に配置でき、同じ効果があります。
これらは通常、見出し要素に配置されます。
HTML5仕様をご覧ください。
廃止された機能 には、次の情報が含まれています。
作成者は、
name
要素にa
属性を指定しないでください。
name
をクリックすると、次のように表示されます。
[次の属性は廃止されています(ただし、要素はまだ言語の一部です)。作成者が使用することはできません:]
name
要素のa
(前のセクションで注記した場合を除く)name
要素のembed
name
要素のimg
name
要素のoption
→代わりに
id
属性を使用してください。
id
をクリックします。 id
は グローバル属性 であることがわかります。これは、any要素で使用できることを意味します。
id
属性は、その要素の一意の識別子(ID)を指定します。
[…]
注:要素の一意の識別子は、さまざまな目的で使用できます。特に、フラグメント識別子を使用してドキュメントの特定の部分にリンクする方法として使用できます、スクリプト作成時に要素をターゲットにする方法として、およびCSSから特定の要素のスタイルを設定する方法として。
id=""
属性を使用する必要があります。 :)
(注: https://webmasters.stackexchange.com/a/30031/10884 から移行し、簡潔にするために編集しました。)
フラグメント識別子としても知られるページはめ込みリンクにユーザーをジャンプさせる必要がある場合、id
属性を設定できます(これは フラグメントID以外の場合に使用 )any要素。次に、href
要素のa
属性のURLで通常の#
を使用します。次に例を示します。
<body>
<p>Despite the many
<a href="#benefits-of-gum-chewing">benefits</a>
you may experience while chewing gum, there are also many drawbacks,
especially with
<a href="http://www.example.org/sugar.html#cons">non-sugarless</a>
gum.</p>
...
<section id="benefits-of-gum-chewing">
<h1>Benefits of Gum Chewing</h1>
...
</section>
</body>
自分のページを作成するときは、使用する予定がない場合でも、各<section>
タグ(HTML5)にid
を付けるのが好きです。 id
の値は、見出しのコンテンツのURLに適したバージョンです。同じid
を<h1>
などに割り当てることで、同じ効果を得ることができます。
Idの使用は一意であるため、必ずしも理想的とは限りません。たとえば、メニュー項目としてリンクのリストがあり、ユーザーがカーソルを合わせたときにそれらの特定の1つだけにJavaScriptを実行する場合、idを使用すると混乱します。
現在私が信じている最良の方法は、classを使用してそれらをグループとして識別することです。
<a class="mylink">Menu Item one</a>
<a class="mylink">Menu Item two</a>
<a class="mylink">Menu Item three</a>
<a>Menu Item four</a>
しかし、私は名前タグを使い続けましたが、パフォーマンスに影響がないため、このマイナーなものを非推奨にするのは愚かであり、ブラウザーが名前タグをすぐに受け入れないと決定した場合に問題が発生します。それは私たちを標準の使用からも遠ざけます。