* id 属性 (HTML, XHTML 1) [9] [CODE(HTMLa)[id]] [[属性]]は、 [[HTML]] のほとんどの[[要素型]]で定義されています。 この属性は、[[要素]]に[[名前]]を割り当てます。 名前は[[文書]]内で固有である必要があります。 仕様書: - [[HTML 4]] -- [CODE(HTMLa)[id]] -- 12.2.3 Anchors with the id attribute -- 14.2.3 Header style information: the [CODE(HTMLe)[STYLE]] element [10] 仕様書 では、この属性の値の役割として、 - [[スタイル・シート]]の[[選択子]]。 - [[スクリプト]]から特定の要素を参照する手段。 - 宣言済み [CODE(HTMLe)[[[object]]]] 要素の名前。 - [[UA]] の一般目的処理のため。たとえば、次の時の欄の識別。 -- HTML から [[DB]] にデータを取り出すとき -- 他の書式に HTML 文書を翻訳するとき - [[リンク]]の[[終点アンカー]]の識別子 を挙げています。 [38] respect ([[Prasd]] [weslpw@gmail.com]) [39] [PRE[ http://tech.groups.yahoo.com/group/hot-legs/ HOT LEGS http://tech.groups.yahoo.com/group/sexy-legs-34/ SEXY LEGS http://tech.groups.yahoo.com/group/women-legs/ WOMEN LEGS http://www.nola.com/forums/profile.ssf?nickname=ballbusting BALLBUSTING http://www.nola.com/forums/profile.ssf?nickname=nylons NYLONS ([[Prasd]] [wesznp@gmail.com]) ]PRE] [40] respect ([[Prasd]] [wesgmw@gmail.com]) [41] Save your time, please. MapsMapsMaps [url=http://lelandkwon.10gbfreehost.com/mobile6543.html] Maps [/url][url=http://members.lycos.co.uk/alfredmyers/names5353.html] Maps [/url] ([[Simos]] [ConstandinosGokasi87@gmail.com]) [42] respect ([[Nepus]] [kaezjh@gmail.com]) [43] respect ([[Nadsy]] [mogsyx@gmail.com]) [44] respect ([[Weter]] [rokebb@gmail.com]) [45] respect ([[Specna]] [shabow@gmail.com]) [46] respect ([[Wernu]] [weriip@gmail.com]) [47] respect ([[Spinu]] [angajr@gmail.com]) [48] respect ([[Nadsy]] [mogltz@gmail.com]) [50] YoUniS dmlakwyfrmyw, [url=http://znppceqhxoag.com/]znppceqhxoag[/url], [link=http://xwukgtrpbwgz.com/]xwukgtrpbwgz[/link], http://caedltpprrzv.com/ ([[ofxivd]] [iymavm@ddicdh.com] [WEAK[2008-09-13 16:20:08 +00:00]]) [51] YoUniS dmlakwyfrmyw, [url=http://znppceqhxoag.com/]znppceqhxoag[/url], [link=http://xwukgtrpbwgz.com/]xwukgtrpbwgz[/link], http://caedltpprrzv.com/ ([[ofxivd]] [iymavm@ddicdh.com] [WEAK[2008-09-13 16:20:20 +00:00]]) [52] YoUniS dmlakwyfrmyw, [url=http://znppceqhxoag.com/]znppceqhxoag[/url], [link=http://xwukgtrpbwgz.com/]xwukgtrpbwgz[/link], http://caedltpprrzv.com/ ([[ofxivd]] [iymavm@ddicdh.com] [WEAK[2008-09-13 16:20:42 +00:00]]) [[#comment]] ** 属性値 [13] この属性は、 HTML 4 的には [CODE[[[name]]]] 型、 [[SGML]]/[[XML]] 的には [CODE(SGML)[[[ID]]]] 型です。 [4] [[HTML]] の [CODE(HTMLa)[id]] 属性値の取りうる値: - draft [[HTML 3.0]]: [CODE(regex)[ [A-Za-z][A-Za-z0-9.-]*]] -- IETF [[HTML 2.x]]: [CODE(regex)[ [A-Za-z][A-Za-z0-9.-]*]] - W3C HTML 4: [CODE(regex)[ [A-Za-z][A-Za-z0-9._:-]*]] - W3C [[XHTML 1]]: [CODE(regex)[\{名前開始文字}\{名前文字}*]] 詳しくは[[噂のID問題]]をご覧下さい。 [14] この属性の値の名前空間は [CODE(HTMLe)[[[a]]]] 要素の [CODE(HTMLa)[[[name]]]] 属性と共有しています。 [15] この属性は省略可能です。省略時は [CODE(SGML)[ID]] なしになります。 [[#comment]] ** 大文字と小文字 [DEL[ [11] (HTML は、大文字・小文字を区別しない(たぶん)。) ([[XHTML]] は、大文字・小文字を区別する。) [1] >>11 HTML でも大文字・小文字が区別されるという話がありますが、どうなんでしょう? [5] >>1 IETF/W3C HTML の [[SGML宣言]]によれば、 [[名前]]の大文字と小文字は区別されません。 (大文字に正規化されます。) 実装には区別するものもきっとあるんでしょうが。。。 ]DEL] [12] >>11,>>1,>>5 この問題 (通称[[噂のID問題]]) は非常に難しい状態にあることがわかっています。 詳しくは[[噂のID問題]]の頁をごらんください。 [[#comment]] ** 実装 [7] [[NC]] は (少なくても 4.01 は) [CODE(HTMLa)[id]] 属性に対応していません。 [[#comment]] ** 例 [16] 終点アンカーとしての使用例 [PRE(HTML)[ You may read more about this in Section Two. ...later in the document

Section Two

...later in the document

Please refer to Section Two above for more details. ]PRE] [WEAK[(HTML 4 仕様書より、改)]] [17] 終点アンカーとしたいときで、適切な要素がないときには、 [CODE(HTMLe)[[[a]]]] 要素が使えます。 [PRE(HTML)[ I just returned from vacation! Here's a photo of my family at the lake.. ]PRE] [WEAK[(HTML 4 仕様書より、改)]] [20] [[CSS]] で特定の要素のスタイルを指定する例 [PRE(HTML)[ CSS and ID Example

This H1 is not affected

This H1 is affected by style

This H1 is not affected

]PRE] [WEAK[(HTML 4 仕様書より、改)]] [49] [CITE[ロイター.co.jp | ロイターe調査, 投票, 調査, ビジネス, 海外, 経済, 金融, ニュース]] ([CODE[2008-09-02 09:57:11 +09:00]] 版) ([CODE(MIME)@en[[[text/html]]]]) > [PRE(HTML bad example code)[ ロイター.co.jp | ロイターe調査, 投票, 調査, ビジネス, 海外, 経済, 金融, ニュース ]PRE] ([[名無しさん]]) [[#comment]] ** メモ [18] HTML 4 仕様書には [CODE(HTMLa)[id]] 属性の[[属性値指定]]で[[文字参照]]が使えないようなことが書かれていますが、 これは誤りで、[[属性値表記]]なら使うことができます。 [[実体参照]]ももちろん使えます。 例: [SAMP(HTML)[Martin Dürst]] [19] >>18 id は名前ですから、HTML 4 で Ü などの文字を含むことはできません (例えば id="DUERST" なら可能ですが)。 なお、XHTML では名前文字の範囲が広がっていますので、id="DÜRST" も valid です。 [33] [CITE[2006-07-02 - d:id:quaa]] ([CODE[2007-10-17 02:34:07 +09:00]] 版) ([[名無しさん]]) [34] [CITE[2006-07-02 - d:id:quaa]] ([CODE[2007-10-17 02:34:07 +09:00]] 版) ([[名無しさん]]) [35] [CITE[誤り訂正日記 - d:id:quaa]] ([CODE[2007-11-11 11:17:03 +09:00]] 版) ([[名無しさん]]) [36] [CITE@ja[ID属性値を巡るhCalendarの奇妙な冒険 | hemiolia.com]] ([[kotarok]] 著, [CODE[2008-02-10 00:17:14 +09:00]] 版) ([[名無しさん]]) [[#comment]] * id 属性 (XML 型録) [6] [[XML]] [[型録]]の要素型 ([[名前空間名]]が [CODE(URI)[[[urn:oasis:names:tc:entity:xmlns:xml:catalog]]]] 及び [CODE(URI)[[[urn:oasis:names:tc:entity:xmlns:tr9401:catalog]]]] の全ての要素型) には [CODE(XML)[id]] 属性 (型 = [CODE(XML)[[[ID]]]]) が存在します。 この属性は型録的には意味が無く、単に識別のためだけにあります。 省略可能です。 [[#comment]] * メモ [2] しっかし、なんで [[XML]] つくる時に [CODE(XMLa)[xml:id]] 属性つくんなかったんかなあ。 [8] >>2 そのうち出来る。はず。多分。てゆかさっさと出来てくれ。 [3] ''を使おう(1)'' : [[XPath]] の [CODE(XPathf)[id()]] 関数について。 [21] [CITE[xml:id Version 1.0]] ([[名無しさん]] [WEAK[2005-09-09 21:59:09 +00:00]]) [22] [CITE@en[Initial comments on XBL (12 November 2005 draft)]] で始まる[[スレ]]で、 [[XBL 2.0]] の[[識別子属性]]を現在の案の通り [CODE(XMLa)@en[[[id]]]] ([[[CODE@en[null]]名前空間]]) にするべきか、 [CODE(XMLa)@en[[[xml]]:[[id]]]] を採用するべきかが議論されています。 [[Ian Hickson]] は、[[名前空間URI]] の分扱いが面倒になること、 [[HTML]] や [[SVG]] が既に [CODE(XMLa)@en[[[id]]]] ([[[CODE@en[null]]名前空間]]) を使用していること、 任意の [[XML]] [[言語]]を処理する[[処理器]]なら知識不要の [CODE(XMLa)@en[[[xml]]:[[id]]]] でも良いかもしれないが、 [[XBL]] を処理する [[Webブラウザ]]はそういう状況の実装ではないことを挙げて、 [CODE(XMLa)@en[[[id]]]] ([[[CODE@en[null]]名前空間]]) が良いと言っています。 これに対して [[Anne van Kesteren]] らは、 [[SVG 1.2]] などが [CODE(XMLa)@en[[[xml]]:[[id]]]] を採用することや、 [CODE(XMLa)@en[[[xml]]:[[base]]]] 属性が存在することなどを指摘しています。 ([[名無しさん]] [WEAK[2005-11-18 12:21:01 +00:00]]) [23] [CITE[How to make a good ID in Atom [dive into mark]]] ([[名無しさん]]) [24] [[SVG Tiny 1.2]] ([[WD]]) は、 [CODE(XMLa)@en[[[id]]]] と [CODE(XMLa)@en[[[xml]]:[[id]]]] の両方が使えるけど同じ値に汁、将来は [CODE(XMLa)@en[[[id]]]] を[[非推奨]]にするからよろしく、とかいってる。 [[XHTML 2.0]] ([[WD]]) は、両方一緒に使うなといってる。 [[HTML 5]] と [[XBL 2.0]] は (というか [[Ian Hickson]] は)、 [CODE(XMLa)@en[[[xml]]:[[id]]]] とかうざいから [CODE(XMLa)@en[[[id]]]] を使う、 [CODE(XMLa)@en[[[xml]]:[[id]]]] は別仕様なんだから使いたければ好きに使っても全然構わないよ、とかいう立場。 ([[名無しさん]] [WEAK[2006-07-27 11:54:45 +00:00]]) [25] [[XFrames]] は [CODE(XMLa)@en[[[xml]]:[[id]]]] だけ。 ([[名無しさん]] [WEAK[2006-08-09 03:01:42 +00:00]]) [26] [CITE[Bug 275196 - xml:id support]] ([[名無しさん]]) [27] [CITE@en[Web Services Security: SOAP Message Security 1.1 (WS-Security 2004)]] は、 - [CODE(XMLa)@en[[QN[wsu:[[Id]]] [http://docs.oasis-open.org/wss/2004/01/oasis-]]]] 200401-wss-wssecurity-utility-1.0.xsd]]]] を使うべき - [CODE(XMLa)@en[[[xml]]:[[id]]]] を使って構わないが、 [[正準XML]] の問題があるので注意汁 - 使用している[[語彙]]の一部は[[大域属性]]を認めていないから[[局所属性]]の [CODE(XML)@en[[[ID]]]] を使う としています (4章)。 ([[名無しさん]]) [28] [CITE[hatena::get_diary::result - Operaとfirefoxでxpathの挙動が違うよ!誰のせい?誰のせい?]] ([CODE[2007-06-04 18:28:13 +09:00]] 版) ([[名無しさん]] [WEAK[2007-06-09 14:02:24 +00:00]]) [29] [CITE[d:id:quaa]] ([CODE[2007-06-07 22:15:24 +09:00]] 版) ([[名無しさん]] [WEAK[2007-06-09 14:02:48 +00:00]]) [30] [CITE[*DRAFT* W3 Forms F2F (Hawthorne) Day 1 June 13, 2007]] ([CODE[2007-06-26 18:29:00 +09:00]] 版) ([[名無しさん]]) [31] [[DOM]] といい [[XPath]] といい [CODE(XML)@en[[[ID]]]] [[要素]]は完全になかったことに? ([[名無しさん]]) [32] [CITE[d:id:quaa]] ([CODE[2007-08-06 19:32:28 +09:00]] 版) ([[名無しさん]]) [37] [CITE[Bug 16505 - getElementById fails to find xml:id identified elements (xml:id support)]] ([CODE[2008-03-30 19:37:36 +09:00]] 版) ([[名無しさん]]) [53] [CITE@en[Re: RELAX NG and xml:id]] ([[Daniel Veillard]] 著, [CODE[2008-08-13 22:22:26 +09:00]] 版) ([[名無しさん]]) [54] [CITE@en[RE: RELAX NG and xml:id]] ([[Grosso, Paul]] 著, [TIME[2008-08-14 01:49:27 +09:00]] 版) ([[名無しさん]])