[19] HTML の a
要素の name
属性は、
そのアンカーに名前をつけます。
(そうすることで他の連結の終点にできるようになります。)
[64] 仕様書:
[82]
この属性は非推奨です
XHTML 1.0 4.10 (参考)。
代わりに id
属性を使うことができます。
[83] XHTML 1.0 では将来の版での削除が予告されており、
実際に XHTML 1.1 には name
は含まれていません。
[20] この属性の値は固有アンカー名です。 SGML 的には CDATA
です。この属性の値は大文字・小文字を区別します。
この属性の値の適用範囲はその文書です。つまり文書内で固有でなければなりません。
この属性は id
属性と名前空間を共有します。
つまり他の id
属性と同じ値ではいけません。
[21] この属性は省略可能です。
[22] name
属性は古くから使われてきましたが、
現在は ID
である id
属性を代わりに使うのが好ましいとされています。
id
属性は HTML のほとんどの要素型に定義されていますから、
わざわざ a
要素としなくても、
どんな要素でも終点アンカーにできます。
name
と id
との関係は、 id
]
属性の説明および噂のID問題の説明を参照してください。
[23] name
属性によって定義されたアンカー名は、
URI参照で素片識別子として使用することができます。
例えば a.html の中の name
ANCHOR
は、 URI 参照で a.html#ANCHOR とあらわせます。
(この際、 URI 参照としてそのまま使えない文字を URI符号化しなければならないことに注意してください。)
[65] スクリプトから名前によって要素を識別する方法について、 HTML 4
は、 name
属性と id
属性の両方が指定されている場合には
name
属性を優先させるべきであるとしています。
HTML 4 18.2.2.3 ここで、 name
属性の指定される要素型は明記されていませんが、リンク先によれば
a
要素の name
属性を指すようです。
[109] NCSA Mosaic は a
要素と fig
要素で
name
属性を実装していたようです。ただしその値が実際に利用されていたのかは不明です。
実装中には将来的に (使っていないのでかわりに?) alt
属性に流用することを意図していそうな注釈があります。
[24] HTML 4 仕様書によれば、 <a name="ANCHOR"></a> のように空要素だと古い UA の中にはアンカーを見つけられないことがあるそうです。
[3] HTML の a
要素型の name
属性の値、理想的には ID
或いは
NMTOKEN
なのですが、実世界では今でも稀に、
#fragment のように #
で始まる値を指定する人がいるみたいです。
[4] もちろん >>3 は間違いで、多分同じページ内の始点リンクの
href
属性で URI参照として
#fragment と書くのと混同してるんでしょう。
(本当に >>3 の例のを参照したいのなら、 href
は
#%23fragment としなければなりません。)
[5] {>>3,>>4 の不正な例} は Mozilla ではうまく動きません (正しいほうは動きます) が、 WinIE 6 では 「意図したように」動きます。もちろん WinIE の解釈が間違っています。 (余計なおせっかい。)
[16]
>>3 その人
の中に M$ が含まれていたりするから笑える。
(名無しさん 2004-06-07 23:48:26 +00:00)
[18]
Dan Connolly なんかはとっとと name
を ID
にしたがっていたのに、とうとう最後までかないませんでしたねぇ。 >>3
のような人達のせいで。
[96] HTML 4 <IW:HTML4:"appendix/notes.html#idx-anchor"> の
Note. The same conversion based on UTF-8 should be applied to values of the
name
attribute for theA
element.
の意味は謎だけど、 XSLT 2.0 and XQuery 1.0 Serialization <http://www.w3.org/TR/2007/REC-xslt-xquery-serialization-20070123/#list-of-uri-attributes> のように URI として扱う属性に含めるのは違うのではないか?
(名無しさん)
[17] HTML の form
要素の
name
属性は、その要素に名前を付けるために使うことができます。
[58] 仕様書:
[69]
HTML 4 DTD 注釈 (参考) には
name of form for scripting
(スクリプト用フォーム名) と説明があります。
[59] この属性は、後方互換性のために追加されました。
応用は要素の識別には id
属性を使うべきです
HTML 4 17.3。
[84]
この属性は非推奨です
XHTML 1.0 4.10 (参考)。
代わりに id
属性を使うことができます。
[85] XHTML 1.0 では将来の版での削除が予告されており、
実際に XHTML 1.1 には name
は含まれていません。
[60] この属性の値は CDATA
です。
大文字・小文字は区別されません。 HTML 4.01 17.3
[61] この属性は省略可能です。
[62] name
属性の代わりに id
属性を使うべきです HTML 4.01 17.3。
[63] この属性によって付けた名前を使ってスクリプトやスタイル・シートから参照できます。
[73]
DOM水準0 では、
document
.form
.name
で名前により form
要素に対応する物体を取得できます。
(名無しさん [sage])
[57] この属性は後方互換性のため HTML 4.01 で追加されました HTML 4.01 A.1.1.12。
[98]
XHTML 1.0 は FE でも SE でも移行用DTDとフレーム集合DTDに NMTOKEN
型として含まれているのですが、
なぜか厳密DTDにはありません。
本文には他の終点アンカー系 name
属性と共に非推奨とあります。
(名無しさん)
[25] HTML の img
要素の
name
属性は、
要素に名前をつけてスクリプトやスタイル・シートで参照できるようにすることができます。
[26] 仕様書:
[67]
HTML 4 DTD の注釈 (参考)
には name of image for scripting
と書かれています。
[27] この属性は後方互換性のために含められているもので、
著者は id
属性を使用するべきです。 HTML 4.01
[86]
この属性は非推奨です
XHTML 1.0 4.10 (参考)。
代わりに id
属性を使うことができます。
[87] XHTML 1.0 では将来の版での削除が予告されており、
実際に XHTML 1.1 には name
は含まれていません。
[28] この属性の値は CDATA
です。
HTML 4 仕様書にはそれ以上の制限は明記されていません。
値の大文字と小文字は区別されません。
[30] 属性値の名前空間は不明です。
12.2.3 Anchors with the id attribute <IW:HTML4:"struct/links.html#idx-anchor-8">
の記述が a
要素以外にも適用されるのだとすれば、
id
と同じ名前空間に属することになります。
その節の後の方の記述によれば、 id
要素も指定する時は同じ値でなければなりません。
[29] この属性は省略可能です。
[66] この属性は HTML 4.01 で後方互換性のために追加されました HTML 4.01 A.1.1.9。
[41] id
属性も併用するときは、
name
と同じ値でなければなりません
( [HTML 4, 噂のID問題 (>>26) ] )。
この場合、使用できる文字は制限されます。
特に、 NAMECASE GENERAL YES
のとき、 name
は大文字でなければならなくなります。
[35] HTML の applet
要素の
name
属性は、
applet 実現値の名前を指定します。
この名前を使って applet は相互に参照・通信できます。
[36] 仕様書: HTML 4 <IW:HTML4:"struct/objects.html#adef-name-APPLET">
[37] この属性は HTML 4 で要素ごと非推奨とされています。
代わりに object
要素型と
id
属性を利用できます。
(ただし、完全に等価ではないので注意してください。)
XHTML 1.0 4.10 (参考)。
代わりに id
属性を使うことができます。
[89] XHTML 1.0 では将来の版での削除が予告されており、
実際に XHTML 1.1 には name
は含まれていません。
[38] この属性の値は CDATA
です。
それ以上の制限は特にないものと思われます。
大文字・小文字は区別されます。
[39] この属性は省略可能です。
[40] id
属性も併用するときは、
name
と同じ値でなければなりません
( [HTML 4, 噂のID問題 (>>26) ] )。
この場合、使用できる文字は制限されます。
特に、 NAMECASE GENERAL YES
のとき、 name
は大文字でなければならなくなります。
id
属性を使うときは必然的に文書内で固有でなければならなくなりますが、
そうでない場合 HTML 4 的にどうなのかは不明です。
[68]
HTML 4 DTD の注釈 (参考) には
allows applets to find each other
と書かれています。
[42] HTML の map
要素の
name
属性は、クライアント側画像写像の名前を割当てます。
[43] 仕様書: HTML 4 <IW:HTML4:"struct/objects.html#adef-name-MAP">
[48]
HTML 4 仕様書には map
要素独自の name
属性の定義の他に他で定義されている属性
として form control 系 name
属性への参照があるのですが、これって間違いでしょうか。
[90]
この属性は非推奨です
XHTML 1.0 4.10 (参考)。
代わりに id
属性を使うことができます。
[91] XHTML 1.0 では将来の版での削除が予告されており、
実際に XHTML 1.1 には name
は含まれていません。
[44] この属性の値は CDATA
です。
大文字・小文字は区別しません。
[46] この属性は必須です。
[45] id
属性を使うときは、同じ値でなければなりません。
(name
は大文字・小文字を区別しないようなので、
大文字・小文字まで一致していなくてもよいと思われます。
(もちろん、一致させた方が混乱の元にならなくて良いでしょう。))
噂のID問題も参照してください。
[47] この属性の値は素片識別子として使用できるようです。
ですから、 (HTML 4 仕様書には言及がないようですが、)
id
属性と併用しないときであっても、
id
と名前空間を共有していると考えるのが妥当でしょう。
[70]
HTML 4 ではどの要素型の name
属性が素片識別子として使えるのか曖昧ですが、
XHTML 1.0 によると HTML 4 では
a
, applet
, form
, frame
, iframe
, img
, map
で素片識別子として使えるそうです
XHTML 1.0 4.10。
XHTML 1.0 ではこれらの name
属性は非推奨とされ、
将来の削除が予告されています
XHTML 1.0 4.10, C.8。
出典:
[72] また、 XHTML 1.0 では
name
属性の型が NMTOKEN
に変更されています。更に本文の記述 (参考)
によると実際には制約が更に強く、
XML の名前でなければならないようです XHTML 1.0 C.8。
HTML 4 との互換性を維持したい場合には
[A-Za-z][A-Za-z0-9:_.-]*
な値にするのがよいともされています XHTML 1.0 C.8。
[71] frame
と iframe
は target
属性の規定も修正しない限り削除しちゃうとまずいと思いますが...
[99]
>>12 なぜか、移行用DTDだけは map
name
が XHTML 1.0 でも
CDATA
のままです。
(名無しさん)
div
要素, span
要素の name
属性[74] div
要素や span
要素で
name
属性を使っている人がいます。
標準の HTML には含まれていませんし、 WinIE や Netscape Navigator で独自に実装されたという話も今のところ聞きません。 捏造しているタグ辞典類も他のこの手のものに比べると皆無といっていいくらい。 なのになぜかそれなりの用例が出てきます。
[75] まぐまぐ - ホームページ楽々講座 - (2005年6月、西久保希光著) <http://blog.mag2.com/m/log/0000092208/106131034?page=1>
<TD><A HREF="226.html"><DIV NAME="pic1" onMouseOver="pic1.style.filt er='none'" onMouseOut="pic1.style.filter='gray'"><IMG SRC="f1.jpg" s tyle="filter:gray" BORDER="0" ID="pic1"></DIV></A></TD> ]PRE]
一見 pic1 という名前をスクリプトから参照しているように見えますが、
スクリプトが参照している pic1 は
img
の id
の方です。著者は一体何を考えて div
に name
なぞ付けたのでしょう?
[76] BIGLOBE SoftPlaza DHTML-Seminar 2-7/9 (1998年11月付け、 Tomohiro Tamoto 著) <http://softplaza.biglobe.ne.jp/text/1999sp/dhtml/dhtml2-7.html>
WinIE には id
を、 Netscape Navigator 4
には name
を使うのだとさも当然のように説明しています。
[77] Dynamic HTML in Communicator <http://developer.netscape.com/docs/manuals/communicator/dynhtml/layers33.htm#1013583>
Netscape 社の (Netscape Navigator 4 の時代の)
DHTML の仕様書ですが、 DOM の Layer
物体の
name
属性を
The name assigned to the layer through the NAME or ID attribute.
と説明しています。しかし HTML の layer
要素にも div
要素にも
id
属性はあっても、
name
属性があるという話はどこにも出てきません。
DOM の Layer
物体の
id
属性も載っていません。
[78] Layer 1193137 Layer <http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/layer.html#1193672>
Netscape 社の (Netscape Navigator 4 の時代の)
JavaScript 1.3 の仕様書ですが、 Layer
物体の name
属性をこちらは
A string specifying the name assigned to the layer through the ID attribute in the LAYER tag.
と説明しています。 name
属性への言及がなくなっています。
[79]
実際に Netscape Communicator 4.8
で確認してみると、 DOM の Layer
物体には name
属性と
id
属性の両方が存在しており、
どちらも同じ id
属性または
name
属性の値になります。
両方指定されて矛盾している場合は name
属性が優先されます
(その場合、 document.layers.id
でアクセスできません)。
[80]
仮のまとめ:
Netscape Navigator 4 で
div
要素に name
属性が実装されており、古い NC4 の時代には正式な機能の一部だった可能性もある。
その風習を意味も無く今でもまもり続けている変な人がいくらかいるらしい(藁
[81] テスト:
検索:
[101]
pod2html が生成する HTML には div
要素に name
属性が指定されたものが含まれます。
(名無しさん)
[103] (X)HTML5 Tracking ( 版) <http://html5.org/tools/web-apps-tracker?from=3787&to=3788>
[104] IRC logs: freenode / #whatwg / 20091201 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20091201>
[105] HTML5 Revision Tracker ( 版) <http://html5.org/tools/web-apps-tracker?from=4953&to=4954>
[106] Basic Data Types and Interfaces – SVG 1.1 (Second Edition) ( ( 版)) <http://www.w3.org/TR/2011/REC-SVG11-20110816/types.html#DataTypeName>
[107] RFC 6249 - Metalink/HTTP: Mirrors and Hashes ( ( 版)) <http://tools.ietf.org/html/rfc6249#section-4>
[108] IRC logs: freenode / #whatwg / 20131104 ( ( 版)) <http://krijnhoetmer.nl/irc-logs/whatwg/20131104>
[110] Fix <https://www.w3.org/Bugs/Public/show_bug.cgi?id=27170>. Define a "n... · cdfbd7f · heycam/webidl ( ( 版)) <https://github.com/heycam/webidl/commit/cdfbd7f915d377f7c818c4f3e3fbb8be0a92ac37>
[111] RFC 2660 - The Secure HyperText Transfer Protocol ( ( 版)) <http://tools.ietf.org/html/rfc2660#section-3.4.1>
[1] Editorial: synchronize with the DOM Standard · whatwg/html@21c6ec7 ( 版) <https://github.com/whatwg/html/commit/21c6ec77594eb89b836d4872222f5916910967fd>
[2] Remove <applet> (zcorpan著, ) <https://github.com/whatwg/html/commit/b9b9d60f9451c05f8e8d542e4094f987ae1a5fb8>
name
とid
では、 属性値に課された制約が異なります。 噂のID
問題の項などをご覧下さい。