What does this mean?
People using screen readers are not able to see the layout of a form. To make forms accessible, they must define explicit text labels for each form control.
More helpUsually the best solution is to use a <label>
element. The label may be linked to
by the form control:
<label for="name">Full name</label>
<input type="name" id="name">
or the <label>
can be wrapped around the form control:
<label>
Full name <input type="name">
</label>
Buttons are different, as their labels are specified by the code for the button, e.g.
<input type="submit" value="Send message">
<button>Send message</button>
Alternatively ARIA attributes, such as aria-label
may be used, but this information
will not be conveyed to visual users. For more information, see W3C's guide to labeling controls.
Hidden input fields (<input type="hidden">
) do not require labels.
Note that the placeholder
attribute
should not be used as an alternative to a label.
84.6% done
How close this website is to fixing this issue.
HTML | Found on page | Issues |
---|---|---|
<input type="email" style="padding-left:12px" name="email" value required placeholder="Email" maxlength="250" class="has-custom-focus style-jxa767ms1input" id="comp-jxa767muinput">
|
1 | |
<input type="email" style="padding-left:21px" name="enter-your email here*" value required placeholder="Enter your email here*" pattern="^.+@.+\.[a-zA-Z]{2,63}$" maxlength="250" class="has-custom-focus style-jth0aoabinput" id="comp-jth04ocninput">
|
1 | |
<textarea style="padding-left:16px;padding-right:10px" placeholder="Message" required class="has-custom-focus style-jxa767natextarea" id="comp-jxa767n6textarea"></textarea>
|
1 | |
<input type="text" style="padding-left:12px" name="subject" value required placeholder="Subject" class="has-custom-focus style-jxa767ms1input" id="comp-jxa767n0input">
|
1 | |
<input type="text" style="padding-left:12px" name="name" value required placeholder="Name" maxlength="100" class="has-custom-focus style-jxa767ms1input" id="comp-jxa767mninput">
|
1 |