<p>Alright, I know how the <code>fieldset</code>/<code>legend</code> works out in HTML. Say you have a form with some fields:</p>

<pre><code>&lt;form&gt;
    &lt;fieldset&gt;
        &lt;legend&gt;legend&lt;/legend&gt;
        &lt;input name="input1" /&gt;
    &lt;/fieldset&gt;
&lt;/form&gt;
</code></pre>

<p>What should I use the <code>legend</code> for? It's being displayed as a <strong>title</strong>, but isn't a legend semantically an explanation of the contents? In my view, preferably you'd do something like this:</p>

<pre><code>&lt;form&gt;
    &lt;fieldset&gt;
        &lt;legend&gt;* = required&lt;/legend&gt;
        &lt;label for="input1"&gt;input 1 *&lt;/label&gt;&lt;input id="input1" name="input1" /&gt;
    &lt;/fieldset&gt;
&lt;/form&gt;
</code></pre>

<p>But that doesn't really work out with how fieldsets are rendered. Is this just a ambigious naming in HTML, or is it my misunderstanding of the English word 'legend'?</p>

<hr>

<p>Edit: fixed some errors ;-)</p>

Yes, the naming is ambiguous. It’s best to consider it as a caption for the fieldset.
See
the HTML spec on
```
FIELDSET
```
and
```
LEGEND
```
elements
if you haven’t already:
The
```
LEGEND
```
element allows authors to assign a caption to a
```
FIELDSET
```
. The legend improves accessibility when the
```
FIELDSET
```
is rendered non-visually.