[30] for
属性は、
適用対象となる要素の識別子を指定するものです。
[1] HTML の label
要素の
for
属性は、
名札と組になる制御子を指定します。
[2] 仕様書:
label
要素 for
属性
<IW:HTML4:"interact/forms.html#adef-for">LABEL
element
<IW:HTML4:"interact/forms.html#idx-label">[3] この属性は IDREF
です。
大文字・小文字は区別されます HTML 4 17.9.1 が、
それ以前に SGML 的に大文字化がなされます。
詳しくは噂のID
問題をご覧ください。
この ID
は、同じ文書の制御子要素の id
でなければなりません。
[4] この属性は省略可能です。 省略した場合は、その要素内にある制御子に関連付けられます HTML 4 17.9.1。
[5]
定義上、 label
は丁度1つの制御子と関連付けられなければなりませんから、
for
属性を指定しない場合には要素の子孫には丁度1つ制御子要素がなければなりません。
for
属性を指定する場合には、
要素の子孫に制御子要素があってはならないはずです
(但し for
属性で指定された要素が子孫にあるという場合は、
定義に反しませんから問題ないと思われます)。
[21] 誤り処理 (非フォーム制御子)
参照されているのがフォーム制御子でない場合、
利用者エージェントはこの属性を無視しなければなりません。
htmlFor
などではそのままの値が使われますが、
control
は null
を返す値としなければなりません。
label
を活性化しても、
関連付けられた要素に焦点を送信してはなりません。
WF2 2.18
[22] 空の属性値
for
属性がない場合のように処理しなければなりません。
WF2 2.18
[6] 複数の label
要素が同じ for
属性を持っていても (同じ制御子を参照していても) 構いません HTML 4 17.9.1。
output
要素 for
属性 (HTML)[16]
HTML の output
要素の
for
属性は、
output
要素の値の源を指定します。
[17] 仕様書:
output
element
<IW:WF2:"#the-output">[19] 利用者エージェントは、この属性を、 値を変えたければ利用者がいじるべき部分を利用者に示すために使用して構いません。 WF2 2.13
[20] WF2 2.13
... <p>Your fax number is <output for="fax"><em>+1</em> 650 555 1234</output>.</p> ... <p id="fax">To change your fax number, you must send us a fax from your new number with a signed request that your fax number details be changed. We will then call you to confirm the change.</p>
この例では、 output
要素内に FAX番号が示されており、
for
属性はその
FAX番号を変更するための方法が書かれた段落を指しています。
[36] IDL属性は、当時の W3C DOM の方針で主要なプログラミング言語の予約語との衝突を避けるようにしていたため、
内容属性とは異なる htmlFor
という名前にしたと思われます。
(IE4 DOM 時代に既にあったのかどうかは不明。)
script
要素 for
属性 (HTML)[7] HTML の script
要素の
for
属性は、スクリプトが適用される事象の対象要素を指定します。
[9] この属性は予約機能でしたが HTML 4 DTD、 その後も正式な HTML の機能として取り入れられることはありませんでした。 代わりに XML事象で同じ機能が標準化されています。
[10] この属性の値は %URI
です。
SGML 的には CDATA
です。 HTML 4 DTD
[26] 実際には WinIE では IDREF
として実装されており、HTML4
は間違っています。
[11] この属性は省略可能です。 HTML 4
[27] event
属性が指定されているときは実質的に for
も必須になるのだと思いますが、省略されていたらどうなるのでしょうかね。
HTMLScriptElement
インターフェイス htmlFor
属性[33] HTMLScriptElement
インターフェイスの
htmlFor
IDL属性は、
for
内容属性を文字列として反映しなければなりません
>>35。
[34] このIDL属性は廃止状態にあります >>35。 しかし利用者エージェントは互換性のために実装しなければなりません。
[13] for
属性は常に
event
属性と組で使います。
[15] この属性に対応する htmlFor
属性が DOM水準1 HTML および DOM水準2 HTML
で予約機能として HTMLScriptElement
界面に定義されています。
[8] 仕様書:
[12] HTML 4 DTD は (厳密DTD も移行用DTD も)
%HTML.Reserved
が IGNORE
であってもこの属性を宣言しています。
HTML 4 仕様書のマーク付けされた DTD は
for
属性を label
要素の
for
属性にリンクしています。
しかし、属性型も意味も異なりますし、単なる間違いと思われます。
[23] (X)HTML5 Tracking Make <script for> block script execution. ( 版) <http://html5.org/tools/web-apps-tracker?from=4202&to=4203>
[24] Bug 7851 – Some (perhaps all) scripts with a for="" attribute should be ignored ( 版) <http://www.w3.org/Bugs/Public/show_bug.cgi?id=7851>
[25] IRC logs: freenode / #whatwg / 20091009 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20091009#l-210>
[29] Fixes #253: Make script element IDL attributes reflect content attrib… · whatwg/html@6c635b1 ( 版) <https://github.com/whatwg/html/commit/6c635b1ca71ab6b12d1e3ad2438457778554eabd>
[28] HTML Speech Incubator Group Final Report ( ( 版)) <http://www.w3.org/2005/Incubator/htmlspeech/XGR-htmlspeech-20111206/#dfn-htmlFor>
[31] Adding [SameObject] to DOMTokenLists · whatwg/html@ec1dc4d ( 版) <https://github.com/whatwg/html/commit/ec1dc4d4571c61cf0c0dfe3e562898635886b412>
[39] Make forms work in shadow trees ( (annevk著, )) <https://github.com/whatwg/html/commit/927fda0f305452a9c54a25d3ebf9a6ed5ae29fd3>
[40] Remove <keygen> (domenic著, ) <https://github.com/whatwg/html/commit/5baa38720f6e83c94a50018c4565808ad548d69c>
[41] Tweak [CEReactions] definition and usage (domenic著, ) <https://github.com/whatwg/html/commit/c422734d44ae9897c1700daf08bd415e0dc5f9e1>
em
要素により国番号が強調されています。