

* option 要素 selected 属性 (HTML, XHTML 1)

[1] [[HTML]] の [CODE(HTMLe)[[[option]]]] 要素の
[DFN[[CODE(HTMLa)[selected]] 属性]]は、
その選択肢をあらかじめ選択した状態とすることを表します。

[7] 仕様書:
- [[HTML 4]]
-- [CITE[17.6.1 Pre-selected options]]
<IW:HTML4:"interact/forms.html#idx-menu-2">
-- [CODE(HTMLe)[option]] 要素 [CODE(HTMLa)[selected]] 属性
<IW:HTML4:"interact/forms.html#adef-selected">
-- [CITE[HTML 4 Changes]]
<IW:HTML4:"appendix/changes.html#h-A.1.1.12">
- [[Web Forms 2.0]]
-- [CSECTION@en[2.3 Changes to existing controls]]
<IW:WF2:"#changes">

[[#comment]]


** 属性値

[8] この属性は[[真偽値属性]]です。指定すれば真 (選択する)、
指定しなければ偽 (選択しない) です。

[[#comment]]


** メニュー制御子の初期状態

[9] '''単一選択メニューの零個選択時の利用者エージェントの動作'''

[CODE(HTMLa)@en[[[multiple]]]] で''ない''
[CODE(HTMLe)@en[[[select]]]] について、
[CODE(HTMLa)@en[[[selected]]]] な
[CODE(HTMLe)@en[[[option]]]] が1つも存在しない場合、
[[利用者エージェント]]は、
最初の [CODE(HTMLa)@en[[[disabled]]]]
でない [CODE(HTMLe)@en[[[option]]]] を選択状態と[['''しなければなりません''']]。
[CODE(HTMLe)@en[[[option]]]] が存在しない場合や
[CODE(HTMLa)@en[[[disabled]]]] でない
[CODE(HTMLe)@en[[[option]]]] が存在しない場合は、
何も選択されていない状態となります。
[SRC@en[WF2 2.3]]

[2] メニュー制御子 ([CODE(HTMLe)[[[select]]]]) では、
あらかじめ1つ以上の選択肢を選んでおくことができます。
[[UA]] は、次の手順により選択済みの項目を決めるべきです
[SRC[HTML 4 17.6.1]]。

- [CODE(HTMLa)[selected]] な [CODE(HTMLe)[option]] が1つもなければ、
-- 最初の項目を選択状態にしておきます [SRC[RFC 1866 8.1.3]]。
-- どの項目も選択状態にするべきではありません [SRC[HTML 4.0 17.6.1]]。
-- どの項目を最初に選択状態にしておくかは未定義です [SRC[HTML 4.01 17.6.1]]。
-- 仕様が変更されたのは、実装の扱いが様々であったからです [SRC[HTML 4.01 17.6.1]]。
-- 著者はどれかの項目を [CODE(HTMLa)[selected]] としておくべきです
[SRC[HTML 4.01 17.6.1]]。
- [CODE(HTMLa)[selected]] な [CODE(HTMLe)[option]] が1つだけあれば、
-- その項目を選択状態にするべきです [SRC[HTML 4 17.6.1]]。
- [CODE(HTMLa)[selected]] な [CODE(HTMLe)[option]] が2つ以上あれば、
-- [CODE(HTMLe)[select]] 要素が [CODE(HTMLa)[multiple]] なら、
すべての [CODE(HTMLa)[selected]] [CODE(HTMLe)[option]] を選択しておくべきです
[SRC[HTML 4 17.6.1]]。
-- [CODE(HTMLe)[select]] 要素が [CODE(HTMLa)[multiple]] でなければ、
[[誤り]]です。 UA はどう扱っても構いませんが、
複数個選択しておくべきではありません。 [SRC[HTML 4 17.6.1]]

[[#comment]]


** メモ

[[#comment]]


* SELECTED 属性 (HTML の A 要素)

[1] [[a]] 要素が既定状態で選択されていることを示す、  [[WebTVのHTML]]
の属性です。

[3] ちなみに選択されていると [CODE(CSS)[outline: yellow solid ?px]]
になるらしいです。

[4] [[SGML]] 的には [CODE(HTML)[SELECTED=SELECTED]] なのですが、 [[WebTV]]
がこれに対応しているかは不明。

- [2] ''<A>'' <http://web.archive.org/web/20000303233321/developer.webtv.net/authoring/html/a.fm.html#http://developer.webtv.net/authoring/html/a.fm.html#http://developer.webtv.net/authoring/html/a.fm.html#1068839>
[[#comment]]


* IMG 要素 SELECTED 属性 (HTML)

[5] 既定状態で選択されている範囲を示す属性です。 [[WebTV]]
が実装しています。
<http://web.archive.org/web/20000304172320/developer.webtv.net/authoring/html/img.html#1059298>

[6] [[ismap]] 属性が指定されている場合は、値は座標です。
>>5 の例示によると [CODE(HTML)["x, y"]] として指定します。
(座標の配置は [[coordate]] 属性値と同じ。) 読点の後に [[SP]]
が入ってますが、適当に無視されるのでしょう。

[CODE(HTML)[USEMAP]] 属性が指定されている場合は、 [[area]]
の索引番号を指定します。実例は示されていませんが、 [CODE(HTML)["1"]]
で、関連付けられている 1番目の [CODE(HTML)[AREA]]
要素に対応すると思われます。その [CODE(HTML)[AREA]]
要素に対応する領域が初期選択となります。

索引番号が [CODE(HTML)[0]] から始まるのか [CODE(HTML)[1]]
から始まるのか、頭に不要な [CODE(HTML)[0]]
があっても無視されるのか、不明。

[[#comment]]


* メモ

[10]
[[擬似クラス]] [DFN@en[[CODE(CSS)@en[:[[selected]]]]]]
は、いくつかの提案がありましたが、
いずれもそのままでは標準化されていません。
([[名無しさん]])

[11]
[[STTS]] では、後の[[選択子]]仕様案に登場する [CODE(CSS)@en[:[[subject]]]] の意味
([[選択子]]の[[主語]]の指定) で提案されていました。
また、[[特性値]]としての[[選択子]]で使うときは更に別の意味
([[XSLT]] における [[XPath]] [[関数]]
[CODE(XPathf)@en[[[current]]()]] に近い。)
が割当てられていました。

;; [CITE[STSS 3]] ([CODE[2000-03-13 23:38:54 +09:00]] 版) <http://www.w3.org/TR/1998/NOTE-STTS3-19981111/#Selected>

([[名無しさん]])

[12]
>>11 の前者の意味での使用例が、早期の[[選択子]]仕様 [[WD]]
中の例示に含まれていました。
- <http://www.w3.org/TR/1999/WD-CSS3-selectors-19990803>
- <http://www.w3.org/TR/2000/WD-css3-selectors-20000410>
- <http://www.w3.org/TR/2000/WD-css3-selectors-20001005/>

これら3つの [[WD]] では [CODE(CSS)@en[:[[subject]]]]
が定義されていましたが、例示では [CODE(CSS)@en[:[[selected]]]]
になっていました。

次の [[WD]] では [CODE(CSS)@en[:[[subject]]]] と共に
[CODE(CSS)@en[:[[selected]]]] の使用例も削除されています。

;; <http://www.w3.org/TR/2001/WD-css3-selectors-20010126/>

([[名無しさん]])

[13]
>>12 の2番目の [[WD]] 以降、現在までのすべての[[選択子]]仕様書の
[CODE(CSS)@en[:[[checked]]]] の項には、以前は
[CODE(CSS)@en[:[[selected]]]] として提案されていた旨が記述されています。

[15] [CITE@en-GB-hixie[Web Controls 1.0]] ([TIME[2004-11-09 08:49:52 +09:00]] 版) <http://www.whatwg.org/specs/web-controls/current-work/#pseudo-classes>

[14] [CITE@en[Web Applications 1.0 r5399     Define option.selected; make <option disabled selected> still get selected.Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=10106]]
( ([TIME[2010-08-31 03:22:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=5398&to=5399>

[16] [CITE@en-GB-hixie[Web Applications Markup Language 1.0]]
( ([TIME[2004-04-08 02:39:12 +09:00]] 版))
<http://hixie.ch/specs/html/apps/web-apps-1#pseudo-classes>

[17] [CITE@en[Remove the context menu feature]]
([[domenic]]著, [TIME[2017-06-09 03:16:29 +09:00]])
<https://github.com/whatwg/html/commit/e7e8c88ecdd7cdc96171f05ab6fe23b56dd48d8a>