CHAPTER 3 OF 5

3. Names and descriptions

Your goal: give a control a clear name and add instructions separately.

A name identifies; a description explains

A button can take its accessible name from its text. An input can take its name from an associated label. Extra instructions can be connected with aria-describedby.

A visible label supplies the name; help text supplies a description
<label for="email">Email address</label> <p id="email-help">We will use this for workshop updates.</p> <input id="email" type="email" aria-describedby="email-help">

Choose the naming method deliberately

These naming attributes can override a control’s text-derived name. Do not add them simply because a control already has visible text.

Sources and further reading