Syntax
<fieldset>
<legend>Group Title</legend>
<!-- form controls -->
</fieldset>Examples
Grouped Radio Buttons
Using fieldset to group a set of related radio options.
<fieldset>
<legend>Preferred Contact Method</legend>
<label><input type="radio" name="contact" value="email"> Email</label>
<label><input type="radio" name="contact" value="phone"> Phone</label>
</fieldset>Multi-Section Form
Breaking a longer form into clearly labeled groups.
<form>
<fieldset>
<legend>Personal Details</legend>
<input type="text" placeholder="Full Name">
<input type="email" placeholder="Email">
</fieldset>
<fieldset>
<legend>Address</legend>
<input type="text" placeholder="Street">
<input type="text" placeholder="City">
</fieldset>
</form>Disabling a Whole Group
The disabled attribute on fieldset disables every control inside it at once.
<fieldset disabled>
<legend>Payment Details (complete Step 1 first)</legend>
<input type="text" placeholder="Card Number">
</fieldset>Attributes
- disabled (boolean): Disables every form control nested inside the fieldset
- name (string): Associates the fieldset with the form for scripting purposes
Best practices
- Always include a <legend> as the first child of a <fieldset> — it is what gives the group its accessible name
- Use fieldset to group related radio buttons or checkboxes so screen readers announce the group context
- Use the disabled attribute on a fieldset to disable a whole section at once instead of each input individually
- Avoid using fieldset purely for visual styling — use a <div> if there is no genuine grouping of controls
Browser compatibility
Support applies to the named feature, not every attribute or behaviour in this article. Versions refer to browsers, not operating systems.
<fieldset>
Desktop
- Chrome
- Supported
From 1 - Firefox
- Supported
From 1 - Safari
- Supported
By 4 (possibly earlier) - Edge
- Supported
From 12 - Opera
- Supported
By 15 (possibly earlier)
Mobile
- Safari on iOS
- Supported
By 3.2 (possibly earlier) - Chrome for Android
- Supported
From 18 - Firefox for Android
- Supported
From 4 - Samsung Internet
- Supported
From 1.0
MDN BCD record for this feature · MDN reference
Support history and limitations
Chrome
- From 1 · Before version 86, this element did not support flexbox and grid layouts within this element. See bug 41027853.
Firefox
- From 1
Safari
- By 4 (possibly earlier)
Edge
- From 12 · Before version 86, this element did not support flexbox and grid layouts within this element. See bug 4511145.
Opera
- By 15 (possibly earlier)
Safari on iOS
- By 3.2 (possibly earlier)
Chrome for Android
- From 18 · Before version 86, this element did not support flexbox and grid layouts within this element. See bug 41027853.
Firefox for Android
- From 4
Samsung Internet
- From 1.0 · Before version 14.0, this element did not support flexbox and grid layouts within this element. See bug 41027853.
<legend>
Desktop
- Chrome
- Supported
From 1 - Firefox
- Supported
From 1 - Safari
- Supported
From 3 - Edge
- Supported
From 12 - Opera
- Supported
By 12.1 (possibly earlier)
Mobile
- Safari on iOS
- Supported
From 1 - Chrome for Android
- Supported
From 18 - Firefox for Android
- Supported
From 4 - Samsung Internet
- Supported
From 1.0
MDN BCD record for this feature · MDN reference
Support history and limitations
Chrome
- From 1
Firefox
- From 1
Safari
- From 3
Edge
- From 12
Opera
- By 12.1 (possibly earlier)
Safari on iOS
- From 1
Chrome for Android
- From 18
Firefox for Android
- From 4
Samsung Internet
- From 1.0
<fieldset> disabled
Desktop
- Chrome
- Supported
From 20 - Firefox
- Supported
From 4 - Safari
- Supported
From 6 - Edge
- Supported
From 79 - Opera
- Supported
From 12
Mobile
- Safari on iOS
- Supported
From 6 - Chrome for Android
- Supported
From 25 - Firefox for Android
- Supported
From 4 - Samsung Internet
- Supported
From 1.5
MDN BCD record for this feature · MDN reference
Support history and limitations
Chrome
- From 20
Firefox
- From 4
Safari
- From 6
Edge
- From 79
- From 12 · Removed in 79 · Last supported version: 18 · Partial implementation · Does not work with nested fieldsets. For example: <fieldset disabled><fieldset><!--Still enabled--></fieldset></fieldset>
Opera
- From 12
Safari on iOS
- From 6
Chrome for Android
- From 25
Firefox for Android
- From 4
Samsung Internet
- From 1.5
<fieldset> name
Desktop
- Chrome
- Supported
From 19 - Firefox
- Supported
From 4 - Safari
- Supported
From 6 - Edge
- Supported
From 12 - Opera
- Supported
From 15
Mobile
- Safari on iOS
- Supported
From 6 - Chrome for Android
- Supported
From 25 - Firefox for Android
- Supported
From 4 - Samsung Internet
- Supported
From 1.5
MDN BCD record for this feature
Support history and limitations
Chrome
- From 19
Firefox
- From 4
Safari
- From 6
Edge
- From 12
Opera
- From 15
Safari on iOS
- From 6
Chrome for Android
- From 25
Firefox for Android
- From 4
Samsung Internet
- From 1.5
MDN BCD 8.1.5 · Dataset built 2026-10-08 · Mapping reviewed 2026-10-21. These dates are not individual browser-test or claim-verification dates. Unknown means the data does not establish support.