[5] [DFN[[CODE(HTMLe)[fieldset]] 要素]]は、
[[フォーム]]の[[制御子]]や[RUBY[名札] [ラベル]]をまとめるために使います。

[16]
仕様書: 
- [[HTML 4]] ([[Web Forms 1.0]])
-- [CITE[17.10 Adding structure to forms: the [CODE(HTMLe)[FIELDSET]] and [CODE(HTMLe)[LEGEND]] elements]]
<IW:HTML4:"interact/forms.html#edef-FIELDSET">
- [[Microsoft]]
-- [CITE@en-us[fieldSet Object]] 
<http://msdn2.microsoft.com/en-us/library/ms535247.aspx>

[17]
:[[開始タグ]]:必須
:[[終了タグ]]:必須
:[[内容模型]] (HTML 4):[CODE(SGML)[([[空白]], [CODE(HTMLe)[[[legend]]]], (%[[flow]])*)]]
:内容模型 (ISO‐HTML):
[CODE(SGML)[(空白, [CODE(HTMLe)[legend]], (%[[block]] | %[[inline]] | [CODE(HTMLe)[[[address]]]])+) −([CODE(HTMLe)[fieldset]])]]
:出現できる文脈:[CODE(SGML)[%[[block]]]] が出現できる場所。
(歴史的変遷: <https://suika.suikawiki.org/www/2004/html/content-fieldset>)
:[[属性]]:
,属性名	,属性値	,既定値	,説明	,出典
,[CODE(HTMLa)@en[[[align]]]]	,	,	,非標準
,[CODE(HTMLa)[[[class]]]]	,	,(なし)	,[[級]]	,"[HTML 4] %[[coreattrs]] ⊂ %[[attrs]], [XHTML 1] [[Core]] ⊂ [[Common]]"
,[CODE(HTMLa)[[[dir]]]]	,	,	,[[書字方向]]	,"[HTML 4] %[[i18n]] ⊂ %attrs, [XHTML 1] [[I18N]] ⊂ Common"
,[CODE(HTMLa)[[[id]]]]	,[CODE(SGML)[[[ID]]]]	,(なし)	,一意識別子	,"[HTML 4] %coreattrs ⊂ %attrs, [XHTML 1] Core ⊂ Common"
,[CODE(HTMLa)[[[lang]]]]	,	,	,[[自然言語]]	,[HTML 4] %i18n ⊂ %attrs
,[CODE(HTMLa)[[[xml]]:lang]]	,	,	,自然言語	,[XHTML 1] I18N ⊂ Common
,[CODE(HTMLa)[[[onclick]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %[[events]] ⊂ %attrs, [XHTML 1] [[Events]] ⊂ Common"
,[CODE(HTMLa)[[[ondblclick]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onkeydown]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onkeypress]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onkeyup]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onmousedown]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onmousemove]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onmouseout]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onmouseover]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[onmouseup]]]]	,[CODE(SGML)[%[[Script]]]]	,(なし)	,	,"[HTML 4] %events ⊂ %attrs, [XHTML 1] Events ⊂ Common"
,[CODE(HTMLa)[[[style]]]]	,	,	,スタイル情報	,"[HTML 4] %coreattrs ⊂ %attrs, [XHTML 1] [[Style]] ⊂ Common"
,[CODE(HTMLa)[[[title]]]]	,	,	,注釈的題	,"[HTML 4] %coreattrs ⊂ %attrs, [XHTML 1] Core ⊂ Common"

** 内容模型

[6] [[HTML 4]] の [[DTD]] では、 [CODE(HTMLe)[fieldset]]
要素型の内容模型は [CODE(SGML)[(#[[PCDATA]], [CODE(HTMLe)[LEGEND]], ([VAR[%flow]])*)]]
とされていますが、注釈で、 [CODE(SGML)[#PCDATA]]
は[[混合内容]]問題を解決するためで、
[[空白]]のみが許される、とされています。

もし内容模型が [CODE(SGML)[([CODE(HTMLe)[legend]], ([VAR[%flow]])*)]]
であったとすると、
[PRE(HTML)[
<fieldset>
  <legend/>
  %flow;
</fieldset>
]PRE]

のように [CODE(HTMLe)[legend]] の開始タグの前に空白がある時に、
(この内容模型は [CODE[[VAR[%flow]]]] 内に [CODE(SGML)[#PCDATA]] が含まれているため、混合内容であり、)
その空白が [CODE(SGML)[#PCDATA]] に該当する[[データ]]とされてしまいます。
しかし、 [CODE(HTMLe)[fieldset]] 要素内にはデータより先に
[CODE(HTMLe)[legend]] 要素が必要ですから、非[[妥当]]にされてしまいます。

この問題には、
- [CODE(HTMLe)[legend]] 要素の開始タグは必ず
[CODE(HTMLe)[fieldset]] 要素の開始タグの直後に書く
(字下げは諦める)
- [CODE(HTMLe)[[[textflow]]]] 要素型や [CODE(HTMLe)[[[bodytext]]]] 要素型のようなダミーを用意する
- [CODE(SGML)[#PCDATA]] を許してしまう
(厳密性を諦める)

の三つの解法があります。 HTML 4 は最終的には三番目の解法を
選択しました。

[7] ところで、 HTML 4 DTD 注釈には
[Q[per specification only whitespace is allowed there]<IW:HTML4:"interact/forms.html#h-17.10">]
と書いてありますけど、仕様書のどこに書いてあるのでしょうか?
(HTML 4 DTD 内の注釈は[RUBYB[参考] [informative]]だし、
心許ないなあ。でも ISO‐HTML の注釈は[RUBYB[規定] [normative]]だ。)

[10]
[[XHTML 1]] では、 [[XML]] の制約から、
更に自由な内容模型 [CODE(XML)[(#PCDATA | %[CODE(HTMLe)[legend]].qname; | %[[Flow.mix]];)*]] になってしまっています。

だけど混合内容問題を解決するために〜という注釈は残ったままなので意味不明になっています。 ([CODE(HTMLe)[fieldset]] 内は全く要素か空白しか入れられないように読めてしまう。)
たとえば: <http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/xhtml-modularization.html#dtdelement_fieldset.qname>

[11]
HTML 4 でも XHTML 1 でも、 [CODE(HTMLe)[form]] 要素の子孫に [CODE(HTMLe)[form]] 要素を入れることはできませんから、 [CODE(HTMLe)[form]] 要素の子孫である [CODE(HTMLe)[fieldset]] 要素の子孫として [CODE(HTMLe)[form]] 要素を入れることはできません。しかし、
[CODE(HTMLe)[form]] 要素の子孫ではない [CODE(HTMLe)[fieldset]] 要素の子孫に [CODE(HTMLe)[form]] 要素を入れることは可能のようです。

[15] ISO‐HTML では [CODE(HTMLe)[fieldset]]
要素の入れ子は禁止されています。

[20]
HTML 4 DTD の[[注釈]] (参考) の説明:

> #PCDATA is to solve the mixed content problem,
per specification only whitespace is allowed there!

[[#comment]]

** 文脈

[29] [[Cougar]] (>>25) 以来、 [CODE(HTMLe)@en[[[fieldset]]]] 
は[[ブロック水準要素]] ([CODE(SGML)@en[%[[block]];]])
に分類されています。

[30] ちなみに、 [[HTML 2.0]] の [[DTD]] では[[フォーム制御子]]は
[CODE(HTMLe)@en[[[form]]]] [[要素]]内でしか使えないことになっていましたが、
[[HTML 3.2]] や [[HTML 4]] ([[Cougar]]) では[[行内要素]]
([CODE(SGML)@en[%[[text]];]]) とされていて、 [CODE(HTMLe)@en[[[form]]]]
の外でも使えます。 [CODE(HTMLe)@en[[[fieldset]]]] 
[[要素]]も特に [CODE(HTMLe)@en[[[form]]]] [[要素]]内に限定されてはいません。

[[#comment]]

** UA による利用

[[#comment]]


*** レンダリング

[8] [CODE(HTMLe)[fieldset]] による集団化情報を使って、
[[視覚UA]] は[[タブ]]を使ったレンダリングができますし、
[[音声UA]] もより分かりやすいレンダリングができます。
従って利用者はよりフォームの制御子等の目的を理解しやすくなり、
文書の[[アクセス可能性]]が高まります。 [SRC[HTML 4 17.10]]

[18]
HTML 4 (というか HTML 3 Form) 
の最初期の草案ではもろにタブをマークする方法も検討されていたこともあったようですが、
最終的にレンダリングに中立な[Q[集団化]]に留まったのでしょう。

しかし、同じ [CODE(HTMLe)[[[form]]]] 内の近隣の
[CODE(HTMLe)[[[fieldset]]]] をまとめてタブ集合として表示する
UA なんて見たことがありません。

実際にタブとしてレンダリングするには [CODE(HTMLe)[[[li]]]]
に対する [CODE(HTMLe)[[[ul]]]] のような包含子要素が要るのではないでしょうか。

[9] [[WinIE]] や [[Gecko]] などは、
[PRE[
+- LEGEND ------------------------+
| Label: Control........          |
| Label: Control........          |
+---------------------------------+
]PRE]

のような既定スタイルを持っています。枠線は[Q[窪み]]です。
(Windoze の設定 dialog box などでよくでてくる、
集団化のためのあれと同じ style です。)

[21]
[[Opnewave SDK]]では[[要素]]の上下に[CODE(HTMLe)@en[[[hr]]]]のような線が引かれるのが既定スタイルです。

[22]
>>9 は[[Microsoft Windows]]の ([[Windows 95]]以来の) [[GUI]]における[CODE(HTMLe)@en[[[fieldset]]]]相当の表現ですが、[[Microsoft Office]]は [WEAK[(確か97以来)]]
[PRE(aafig)[
 LEGEND -------------------------
  Label: Control........           
  Label: Control........           
]PRE]

のようになっています。

[23]
>>9 は[[Microsoft Windows]]の ([[Windows 95]]以来の) [[GUI]]における[CODE(HTMLe)@en[[[fieldset]]]]相当の表現ですが、[[Microsoft Office]]は [WEAK[(確か97以来)]]
[PRE(aafig)[
 LEGEND -------------------------
  Label: Control........           
  Label: Control........           
]PRE]

のようになっています。

[28] [[WinIE]] の古い版では、 [CODE(HTMLa)@en[[[align]]]]
[[属性]]が [CODE(HTMLe)@en[[[img]]]] [[要素]]の場合のように実装されていたそうです。

;; <http://www.tohoho-web.com/html/fieldset.htm>

[37] [CITE[IRC logs: freenode / #whatwg / 20090202]] ([TIME[2009-02-03 10:13:21 +09:00]] 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20090202#l-68>


** 不思議解釈

[1]
''地獄変00:blockquoteはもう古い〜fieldsetの伝説(legend)!!'' <http://blog.livedoor.jp/jigokuhen00/archives/169129.html#content>
([[名無しさん]] [WEAK[2004-03-23 02:15:27 +00:00]])

[2]
>>1 は[[引用]]のために (特定 [[UA]] の見た目の理由から) [CODE(HTMLe)[fieldset]] + [CODE(HTMLe)[[[legend]]]] を使おうと提案して叩かれた例。

;; 著者が一日でこんなに叩かれましたと出してる URI がほとんど某方面なのが藁える。

[3]
だけど、 >>1 みたいなことを考える人が出てくるのって、
- [[HTML 3]] の [CODE(HTMLe)[[[credit]]]] や表の [CODE(HTMLe)[[[caption]]]] に相当する要素型が無い
- [CODE(HTMLe)[fieldset]] + [CODE(HTMLe)[legend]] の典型的レンダリング(謎)を CSS で気軽に(謎)実現する方法がない

のが原因でしょ。それが解決されない限りまた繰り返されるだろうなあ。
(Form control 以外の集団化・見出し付けのために [CODE(HTMLe)[fieldset]] + [CODE(HTMLe)[legend]] を使うというネタはたしか外出だし。)

[[#comment]]


** 他との関係

[12] [CODE(HTMLe)[[[legend]]]] 要素型は、必ず
[CODE(HTMLe)[fieldset]] 要素型とセットで使用します。

[13] [CODE(HTMLe)[[[input]]]] 要素や
[CODE(HTMLe)[[[button]]]] 要素 ([CODE(HTMLa)[[[type]]]]
が [CODE(HTML)[[[reset]]]]) を [CODE(HTMLe)[fieldset]]
要素内で使用すると、適用範囲 (初期化される範囲)
は [CODE(HTMLe)[fieldset]] 要素内に限定されます。

[14] [CODE(HTMLe)[input]] 要素 ([CODE(HTMLa)[type]]
が [CODE(HTML)[[[file]]]]) は典型的に 
[CODE(HTMLe)[fieldset]] により (ブラウザ内部的に) 
構造化されると [[ISO-HTML]] 利用者の指針
<http://purl.org/NET/ISO+IEC.15445/Users-Guide.html#CL.I.FILE>
に書いてあります。


* 歴史

** [CODE[fieldset]] の誕生


[16] [CITE[Design Issues for HTML Forms]], [TIME[1999-02-04T17:41:10.000Z]], [TIME[2024-08-25T03:32:27.452Z]] <https://www.w3.org/TR/WD-forms-960308.html>



[FIG(data)[ [216] [[HTML要素概説]]

:[F[要素名]]:[CODE[lgroup]]
:日付:[TIME[1995-03-08]]
:説明:
[TIME[1996-03-08]]付の [[W3C]] 文書で
[CODE[lgroup]]
が提案されていた。
現在の [CODE[fieldset]] に当たる。
:出典:
[REFS[

-
[CITE[Design Issues for HTML Forms]], 
[DATA(.author)[[[W3C]]]],
[DATA(.status)[[[Working Draft]]]],
[TIME(.published)[08-Mar-96][1996-03-08]],
[TIME[1999-02-04T17:41:10.000Z]], [TIME[2024-08-25T03:33:02.026Z]] <https://www.w3.org/TR/WD-forms-960308.html>

]REFS]

]FIG]



[25] [CODE(HTMLe)@en[[[fieldset]]]] [[要素]]は1996年7月10日の
[[Cougar]] ([[HTML 4]]) [[DTD]] 案で初めて登場しました。

;; <https://suika.suikawiki.org/gate/2007/schema/schema/d5713b08467c2ce6c88318ad9af7bf92/prop.html>


[83] 
>>25 の版ではまだ [CODE[legend]] がなく、 [CODE[caption]] と併用されていました。


[FIG(data)[ [84] [[HTML要素概説]]

:[F[要素名]]:[CODE[fieldset]]
:日付:[TIME[1996-07-10]]
:説明:
[TIME[1996-07-10]]版 [[Cougar]] [[DTD]]
に
[CODE[fieldset]]
がある。
[SRC[HTML4-19960710]]

]FIG]

[86] 
[CODE[legend]] の初出は [CITE[HTML 4.0]] の最初の [[WD]]。
[SRC[>>85]]

[85] [CITE[Forms in HTML documents]], [TIME[1997-07-08T12:32:52.000Z]], [TIME[2024-09-28T09:42:21.182Z]] <https://www.w3.org/TR/WD-html40-970708/interact/forms.html#edef-LEGEND>


[FIG(data)[ [87] [[HTML要素概説]]

:[F[要素名]]:[CODE[legend]]
:日付:[TIME[1997-07-08]]
:説明:
[TIME[1997-07-08]]、
[CITE[HTML 4.0]]
に
[CODE[legend]]
が追加された。
:出典:
[REFS[

-
[DFN[HTML4-19970708:text]]:
[CSECTION@en[Paragraphs, Lines, and Phrases]], 
[CITE@en[HTML 4.0 Specification]],
[TIME(.published)[1997-07-08T12:32:34.000Z]], [TIME[2024-09-28T09:07:30.104Z]] <https://www.w3.org/TR/WD-html40-970708/struct/text.html>

]REFS]

]FIG]





[27] [[WinIE]] は 4.0 から実装しています。

[[WinIE 4]] の最初の公開版 (Platform Preview 英語版) 
は1997年4月に配布開始されています。このとき既に 
[CODE(HTMLe)@en[[[fieldset]]]] 
[[要素]]が実装されていたかは定かではありませんが、
いずれにしても >>25 より後ということになります。

一般公開されていないα版は1996年6月にできているらしいです。
その時点で実装されていたとすれば、 >>25 より前になります。

もっとも、当時 [[Microsoft]] は [[HTML WG]] に参加していたので、
[[Microsoft]] が [[HTML WG]] に提案し、かつほぼ同時に [[WinIE]]
に実装した、という可能性もあります。

- [89] [CITE[Fieldset]], [TIME[2005-03-28T08:14:36.000Z]], [TIME[2024-09-28T09:48:04.641Z]] <http://www.blooberry.com/indexdot/html/tagpages/f/fieldset.htm>
- [88] [CITE[Legend]], [TIME[2005-03-24T06:41:46.000Z]], [TIME[2024-09-28T09:47:17.847Z]] <http://www.blooberry.com/indexdot/html/tagpages/l/legend.htm>

[90] >>89 >>88 は [CODE[fieldset]], [CODE[legend]] への対応を IE4B2 としています。

[91] [[IE]] 4.0 Preview 2 の[[英語版]]が公開されたのが[TIME[1997-07-15]]、
[[日本語版]]が公開されたのが[TIME[1997-07-22]]です。
[[IE4]] 正式版の[[英語版]]が公開されたのが[TIME[1997-09-30]]です。

[94] 
Preview 2 で実装されていたとする情報が正しいとして (独立した情報源は未発見、
当時の IE4 を発掘してきて確認するしかないのかな?)、
[[HTML4]] の公開から1週間後なので、この期間で実装するのは不可能。
[[MS]] は [[HTML WG]] に参加しているので内部版を知っていたのは当然として、
内部版で [CODE[legend]] は数ヶ月前に既に追加されていたものと考えていいでしょう。

[FIG(quote)[
[FIGCAPTION[
[92] [CITE@ja[MouseMove]], 
[[Ron Wodaski]],
[TIME(.published)[1997/10/14 16:00:00][1997-10-14T16:00:00]],
[TIME[2024-09-28T10:08:52.000Z]] <https://groups.google.com/g/microsoft.public.inetexplorer.ie4.scripting/c/2FCohqkTbJA/m/lMo26lKV2wsJ>
]FIGCAPTION]

>Applies To
>A, ADDRESS, APPLET, AREA, B, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER,
CITE, CODE, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, H1,
H2, H3, H4, H5, H6, HR, I, IMG, INPUT, KBD, LABEL, LEGEND, LI, LISTING, MAP,
MARQUEE, MENU, OL, P, PLAINTEXT, PRE, S, SAMP, SELECT, SMALL, SPAN, STRIKE,
STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U,
UL, VAR, XMP, document
]FIG]

[93] 
>>92 当時の [[MSDN]] からの引用。 [CODE[fieldset]], [CODE[legend]] が実装されていたことが知られる。


[26] [[Classic Mozilla]] では実装されず、 [[Gecko]] 版 [[Mozilla]] 
で初めて実装されたようです。

[97] [[HTML WG]] に参加していたはずの [[Netscape]] はなぜ [CODE[fieldset]]
を実装しなかったのでしょう。 [[NN]] 4.0 には時系列的に間に合わなかったのだとしても、
その後で追加実装することはできたはずなのに。

[98] あるいは実装するつもりがなかったなら反対することもできたはずなのに。


[95] 
1998年11月付けの [[Gecko]] [[画面写真]]に [CODE(HTMLe)@en[[[fieldset]]]]
[[要素]]の例が示されています。
[SRC[>>96]]

[REFS[

- [96]  [CITE[NGLayout Project: Screen Shots]] 
([TIME[2007-09-08 17:38:45 +09:00]] 版) 
<http://www.mozilla.org/newlayout/screenshots/>

]REFS]


- [31] [CITE[Bug 944 &#8211; FIELDSET and LEGEND don't work]] 
<https://bugzilla.mozilla.org/show_bug.cgi?id=944>
- [36] [CITE[Bug 1860 &#8211; HTML4: <FIELDSET><LEGEND>Title</LEGEND></FIELDSET>]] 
<https://bugzilla.mozilla.org/show_bug.cgi?id=1860>
- [34] [CITE[Bug 2358 &#8211; parser: frameset terminates early]] 
<https://bugzilla.mozilla.org/show_bug.cgi?id=2358>
- [35] [CITE[Bug 3854 &#8211; Pages not displayed correctly]]
<https://bugzilla.mozilla.org/show_bug.cgi?id=3854>
- [32]
[CITE[Bug 6452 &#8211; HTML 4 FIELDSET (and LEGEND) display broken]] 
<https://bugzilla.mozilla.org/show_bug.cgi?id=6452>
- [33] [CITE[Bug 8869 &#8211; legend has incorrect vertical positioning]] 
<https://bugzilla.mozilla.org/show_bug.cgi?id=8869>

[[#comment]]

** 実装

[4]
''iCabのぺ〜じ - A氏からの手紙(FIELDSETの扱いについて)'' <http://www.gld.mmtr.or.jp/~tanico/Ah/001Al.html>

* 人工的な利用例

[19] 薬暦フォームの例 [SRC[HTML 4 17.10]]
[PRE(HTML)[
<FORM action="[VAR[...]]" method="post">
 <P>
 <FIELDSET>
  <LEGEND>Personal Information</LEGEND>
  Last Name: <INPUT name="personal_lastname" type="text" tabindex="1">
  First Name: <INPUT name="personal_firstname" type="text" tabindex="2">
  Address: <INPUT name="personal_address" type="text" tabindex="3">
  ...more personal information...
 </FIELDSET>
 <FIELDSET>
  <LEGEND>Medical History</LEGEND>
  <INPUT name="history_illness" 
         type="checkbox" 
         value="Smallpox" tabindex="20"> Smallpox
  <INPUT name="history_illness" 
         type="checkbox" 
         value="Mumps" tabindex="21"> Mumps
  <INPUT name="history_illness" 
         type="checkbox" 
         value="Dizziness" tabindex="22"> Dizziness
  <INPUT name="history_illness" 
         type="checkbox" 
         value="Sneezing" tabindex="23"> Sneezing
  ...more medical history...
 </FIELDSET>
 <FIELDSET>
  <LEGEND>Current Medication</LEGEND>
  Are you currently taking any medication? 
  <INPUT name="medication_now" 
         type="radio" 
         value="Yes" tabindex="35">Yes
  <INPUT name="medication_now" 
         type="radio" 
         value="No" tabindex="35">No
  If you are currently taking medication, please indicate
  it in the space below:
  <TEXTAREA name="current_medication" 
            rows="20" cols="50"
            tabindex="40">
  </TEXTAREA>
 </FIELDSET>
</FORM>
]PRE]

HTML 4 仕様書は、更にスタイル・シートやスクリプトで制御子の位置を揃えたり、
色を変えたり、 [Q[Current Medication]] で [Q[Yes]] と答えた場合のみ
[CODE(HTMLe)[textarea]] を有効にしたりすると更に利用者にとって分かりやすくなるであろうと指摘しています。
([CODE(HTMLe)[[[label]]]] も使った方が良いでしょう。)

* 実利用例

[102] [CITE@en[Ministry of Finance, Lao P.D.R. - Ministry of Finance, Lao P.D.R.]], [[Vilaythong Southavilay (Toto)]], [TIME[2025-11-15T09:22:17.000Z]], [TIME[2007-12-15T12:39:43.554Z]] <http://web.archive.org/web/20071215123925/http://www.mof.gov.la/>


[24]
'''一般の見出し・本文のマーク付けに濫用した例'''
[PRE(HTML bad example code)[
    <TR>
      <TD>
      <FORM>
      <FIELDSET><LEGEND><A name="600"><B>紀元前600年頃世界初のデリバティブ</B></A></LEGEND><BR>
      デリバティブとは、主に(金融などから)派生した商品のことで、有名なものに先物取引、オプション取引、スワップ取引がある。その中のオプション取引(オプションとは、権利料のことで、例えば一定期間の後に決まった金額で株式などを買うことのできる権利の値段をいう)で大もうけをした人物が紀元前の600年ごろにいたという記録がある。<BR>
      <BR>
      アリストテレスの「政治学」の中に出てくる話で、哲学者のターレスという人物が、星の観測からオリーブの大豊作を予想し、オリーブ絞り機の権利料(収穫期のオリーブ絞り機を使うことのできる権利)を買い占めて大もうけした話がある。<BR>
      <BR>
      </FIELDSET>
      </FORM>
      </TD>
    </TR>
]PRE]

;; 出典: [CITE[株にまつわる金融の歴史・出来事・動き]] 
(2006年2月付け) <http://tyotiku.fc2web.com/stock1.html>

;; >>1 も参照。


* HTML5


[82] 
[CITE@en['''['''''']''' (0) WF2: <fieldset> element summary.]], [[Hixie]], [TIME[2008-09-03 18:32:32 +09:00]], [TIME[2024-09-04T12:58:17.000Z]] <https://github.com/whatwg/html/commit/62a6f3ee9bf8b6b5ecccb97b60fa949d482174e1#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>

[FIG(data)[ [81] [[HTML要素概説]]

:[F[要素名]]:[CODE[fieldset]]
:日付:[TIME[2008-09-03]]
:説明:
[TIME[2008-09-03]]、
[CITE[HTML5]]
に
[CODE[fieldset]]
が追加された。
:出典:
[REFS[

-
[CITE[HTML5 r2143]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2008-09-03 18:32:32 +09:00]], [TIME[2024-09-04T12:58:17.000Z]] <https://github.com/whatwg/html/commit/62a6f3ee9bf8b6b5ecccb97b60fa949d482174e1>

]REFS]

]FIG]




[38] [CITE[IRC logs: freenode / #whatwg / 20090817]]
([TIME[2009-10-11 15:59:52 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20090817#l-406>

[39] [CITE@en[HTML <fieldset> rendering]]
( ([[Robert O'Callahan]] 著, [TIME[2014-01-16 12:08:43 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-style/2014Jan/0185.html>

[40] [CITE@en[''''''[''''''CSSWG'''''']'''''' Minutes Telecon 2014-01-22]]
( ([[Dael Jackson]] 著, [TIME[2014-01-23 10:33:49 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-style/2014Jan/0334.html>

[41] [CITE@en[Web Applications 1.0 r8576     Try to be more compatible in <fieldset> rendering rules.]]
( ([TIME[2014-04-15 08:21:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=8575&to=8576>

[42] [CITE@en[Web Applications 1.0 r8753     Make sure :disabled matches fieldsets inside disabled fieldsets, since apparently that's a thing. Also, editorial cleanup around 'disabled'.]]
( ([TIME[2014-09-06 08:01:00 +09:00]] 版))
<http://html5.org/r/8753>

[43] [CITE@en[Web Applications 1.0 r8842  Make <fieldset> display:block to match implementations]]
( ([TIME[2014-10-29 03:20:00 +09:00]] 版))
<https://html5.org/r/8842>

[FIG(quote)[
[FIGCAPTION[
[44] [CITE@ja[女子高生が鉄道模型を作った 繊細な表現、国際大会でV:朝日新聞デジタル]]
([TIME[2015-12-31 14:16:49 +09:00]] 版)
<http://www.asahi.com/articles/ASHDS40XQHDSUTIL015.html>
]FIGCAPTION]

> <li class="Search"><form action="http://sitesearch.asahi.com/.cgi/sitesearch/sitesearch.pl?iref=com_utnavi" method="GET">
> <fieldset>
> <input type="text" name="Keywords" value="" class="SearchKeywords">
> <input type="submit" name="Searchsubmit2" value="検索" class="SearchSubmit">
> <input type="hidden" name="Searchsubmit" value="検索" >
> </fieldset>
> </form></li>

]FIG]


[FIG(quote)[
[FIGCAPTION[
[45] [CITE@ja[年賀状のサルを12年前と比べてみたら...デザイナーは同じ人、ヒツジでも話題に]]
([TIME[2015-12-31 14:22:29 +09:00]] 版)
<http://www.huffingtonpost.jp/2015/12/30/new-years-card-monkey-2004-and-2016_n_8893298.html>
]FIGCAPTION]

> 
>                                   <form action="#">
>                                       <fieldset>
> 					                                                 <legend>Get Japanメールマガジンを講読</legend>
>                                           <label for="newsletter-email">メールアドレス</label>
>                                           <input class="input-email" placeholder="メールアドレス" id="newsletter-email" type="text" />
>                                           <input type="checkbox" value="1" name="email_subscribe_check" class="email_subscribe_check" style="display:none;" />
>                                           <label for="newsletter-submit">メールアドレス</label>
> 						                                              <input data-vertical="japan" class="submit" id="newsletter-submit" type="submit" value="登録"  />
> 						                                      </fieldset>
>                                   </form>

]FIG]


[46] [CITE@en[Editorial: Cross-reference DOM "child" where appropriate in rendering]]
([[zcorpan]]著, [TIME[2016-09-20 20:16:41 +09:00]])
<https://github.com/whatwg/html/commit/e8c91c05edc8d6cdb33fdd5452e052359d40490b>

[47] [CITE@en[Fix form inheritance behavior for autocapitalize]]
([[rlanday]]著, [TIME[2018-01-25 08:58:12 +09:00]])
<https://github.com/whatwg/html/commit/b7c21b1b56d77215d3d85ae14a072c090dbe6266>

[48] [CITE@en[942341 - "top:0" for abspos content in a fieldset is no longer at the top of the <legend> (breaking e.g. the Mozillians "edit" page)]]
([TIME[2018-05-02 13:46:26 +09:00]])
<https://bugzilla.mozilla.org/show_bug.cgi?id=942341>

[49] [CITE@en[update fiedlset mapping to better reflect implementations]]
([[stevefaulkner]]著, [TIME[2018-05-19 17:19:32 +09:00]])
<https://github.com/w3c/html-aam/commit/e0104f78197b6a0216d4651bfc24cc41dfec1907>

[50] [CITE@en['''['''whatwg''']''' Fieldset interoperability work]]
([[Simon Pieters]]著, [TIME[2018-08-16 05:30:44 +09:00]])
<https://lists.w3.org/Archives/Public/public-whatwg-archive/2018Aug/0001.html>

[51] [CITE@en[Change fieldset's default padding to match the majority]]
([[zcorpan]]著, [TIME[2018-08-16 15:06:27 +09:00]])
<https://github.com/whatwg/html/commit/34cc15a176a952d999a74b79a7d395185f4377ea>

[52] [CITE@en[Specify the position of the rendered legend in fieldset · Issue #3921 · whatwg/html]]
([TIME[2018-08-22 19:04:07 +09:00]])
<https://github.com/whatwg/html/issues/3921>

[53] [CITE@en[Change fieldset's default padding to match the majority by zcorpan · Pull Request #3922 · whatwg/html]]
([TIME[2018-08-22 19:04:23 +09:00]])
<https://github.com/whatwg/html/pull/3922>

[54] [CITE@en[Fix attribute descriptions in the index for fieldset]]
([[zcorpan]]著, [TIME[2018-08-17 22:48:06 +09:00]])
<https://github.com/whatwg/html/commit/593486d1407c36c367be3c22d90044db1ef967e6>

[55] [CITE@en["Content attributes" descriptions are weird for fieldsets · Issue #3335 · whatwg/html]]
([TIME[2018-08-23 18:50:05 +09:00]])
<https://github.com/whatwg/html/issues/3335>

[56] [CITE@en[Fix attribute descriptions in the index for fieldset by zcorpan · Pull Request #3938 · whatwg/html]]
([TIME[2018-08-23 18:50:17 +09:00]])
<https://github.com/whatwg/html/pull/3938>

[57] [CITE@en[Refer to a fieldset's legend as a caption to reduce confusion]]
([[zcorpan]]著, [TIME[2018-08-21 19:16:49 +09:00]])
<https://github.com/whatwg/html/commit/169413911523380c64d5ec66a60bed1992bdc7ca>

[58] [CITE@en[Name of <fieldset> group given by <legend> and <fieldset name=""> confusable · Issue #3702 · whatwg/html]]
([TIME[2018-09-04 16:25:33 +09:00]])
<https://github.com/whatwg/html/issues/3702>

[59] [CITE@en[Refer to a fieldset's legend as a caption to reduce confusion by zcorpan · Pull Request #3951 · whatwg/html]]
([TIME[2018-09-04 16:26:26 +09:00]])
<https://github.com/whatwg/html/pull/3951>

[60] [CITE@en[Change fieldset's min-width to min-inline-size]]
([[zcorpan]]著, [TIME[2018-08-25 02:29:53 +09:00]])
<https://github.com/whatwg/html/commit/825ede5a87320cd10c2e49b421ed028b0c9c339b>

[61] [CITE@en[Should the min-content style on fieldset really be min-width, or min-inline-size? · Issue #2078 · whatwg/html]]
([TIME[2018-09-21 22:36:06 +09:00]])
<https://github.com/whatwg/html/issues/2078>

[62] [CITE@en[Change fieldset's min-width to min-inline-size by zcorpan · Pull Request #3914 · whatwg/html]]
([TIME[2018-09-21 22:36:40 +09:00]])
<https://github.com/whatwg/html/pull/3914>

[63] [CITE@en[Tweak how accesskey on legend works]]
([[zcorpan]]著, [TIME[2018-09-07 06:25:22 +09:00]])
<https://github.com/whatwg/html/commit/aa374be03beebf25ed33022846c2d03d3ea03484>

[64] [CITE@en[Tweak how accesskey on legend works by zcorpan · Pull Request #3987 · whatwg/html]]
([TIME[2018-10-14 17:53:00 +09:00]])
<https://github.com/whatwg/html/pull/3987>

[65] [CITE@en[Unclear which legend element to be used as accessible name for fieldset · Issue #145 · w3c/html-aam]]
([TIME[2018-10-17 13:00:48 +09:00]])
<https://github.com/w3c/html-aam/issues/145>

[66] [CITE@en[Clarify which legend/figcaption/caption element to use by zcorpan · Pull Request #146 · w3c/html-aam]]
([TIME[2018-10-17 13:01:58 +09:00]])
<https://github.com/w3c/html-aam/pull/146>

[67] [CITE@en[Revamp how fieldset and legend rendering is defined]]
([[zcorpan]]著, [TIME[2018-09-20 03:04:40 +09:00]])
<https://github.com/whatwg/html/commit/6fbb7ff8fbe1c76506145ba8ffce690224be66e0>

[68] [CITE@en[Decide if <fieldset style="display:list-item"> should be supported or not · Issue #3955 · whatwg/html]]
([TIME[2018-10-19 17:10:54 +09:00]])
<https://github.com/whatwg/html/issues/3955>

[69] [CITE@en[Define whether fieldset's legend should mask border-image · Issue #3930 · whatwg/html]]
([TIME[2018-10-19 17:11:31 +09:00]])
<https://github.com/whatwg/html/issues/3930>

[70] [CITE@en[Specify where fieldset's containing block is when styled with position: relative · Issue #3928 · whatwg/html]]
([TIME[2018-10-19 17:12:00 +09:00]])
<https://github.com/whatwg/html/issues/3928>

[71] [CITE@en[fieldset should force used value of 'display' for some values · Issue #3915 · whatwg/html]]
([TIME[2018-10-19 17:12:39 +09:00]])
<https://github.com/whatwg/html/issues/3915>

[72] [CITE@en[Need to spec fieldset layout · Issue #3660 · whatwg/html]]
([TIME[2018-10-19 17:12:54 +09:00]])
<https://github.com/whatwg/html/issues/3660>

[73] [CITE@en[Revamp how fieldset and legend rendering is defined by zcorpan · Pull Request #3934 · whatwg/html]]
([TIME[2018-10-19 17:13:52 +09:00]])
<https://github.com/whatwg/html/pull/3934>

[74] [CITE@en[update fiedlset mapping to better reflect implementations]]
([[stevefaulkner]]著, [TIME[2018-05-19 17:19:32 +09:00]])
<https://github.com/w3c/html-aam/commit/e0104f78197b6a0216d4651bfc24cc41dfec1907>

[75] [CITE@en[Refer to a fieldset's legend as a caption to reduce confusion]]
([[zcorpan]]著, [TIME[2018-08-21 19:16:49 +09:00]])
<https://github.com/whatwg/html/commit/169413911523380c64d5ec66a60bed1992bdc7ca>

[76] [CITE@en[Name of <fieldset> group given by <legend> and <fieldset name=""> confusable · Issue #3702 · whatwg/html]]
([TIME[2019-03-04 16:40:38 +09:00]])
<https://github.com/whatwg/html/issues/3702>

[77] [CITE@en[Refer to a fieldset's legend as a caption to reduce confusion by zcorpan · Pull Request #3951 · whatwg/html]]
([TIME[2019-03-04 16:40:58 +09:00]])
<https://github.com/whatwg/html/pull/3951>

[78] [CITE[The WHATWG Blog — The state of fieldset interoperability]]
([TIME[2019-06-29 10:07:50 +09:00]])
<https://blog.whatwg.org/the-state-of-fieldset-interoperability>

[79] [CITE@en-US[Fieldset Interoperability - Bocoup]]
([TIME[2019-06-29 10:08:49 +09:00]])
<https://bocoup.com/work/fieldset-interoperability>

[80] [CITE[ねこめしにっき(2002年11月中旬)]]
([TIME[2006-01-05T18:51:24.000Z]], [TIME[2022-06-14T12:36:00.155Z]])
<http://www.remus.dti.ne.jp/~a-satomi/nikki/2002/11b.html#d19n01>

**


[99] [CITE@en[Boycott IETF 127]], [TIME[2025-03-24T03:26:32.000Z]] <https://boycott-ietf127.org/>

>
[PRE(HTML code)[
        <h2 class="govuk-heading-l">Voice your support</h2>
        <form action="" method="post">
            <input type="hidden" name="csrfmiddlewaretoken" value="69tZTZIoNozSSp7xyzNA3L5f9XoIMIm8lQPj2UTTLO3NN50ppr4kozySX5okUOwM">
            <fieldset class="govuk-fieldset">
                <legend class="govuk-fieldset__legend govuk-fieldset__legend--m">
                    <h2 class="govuk-fieldset__heading">Who are you?</h2>
                </legend>
                <div class="govuk-form-group">
                    <label class="govuk-label" for="name">Name</label>
                    
                    <input class="govuk-input" id="name" name="name" type="text" required
                           >
                </div>
]PRE]


[100] [CODE[fieldset]] の実利用例を見たの何年ぶりだろう!

[101] [CODE[legend]] の中に [CODE[h2]] を使っているし、その直前の見出しも [CODE[h2]]
という癖が強いあれだけど