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.

Usually 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.



99.2% done

How close this website is to fixing this issue.

HTML Found on page Issues
<input type="email" ng-model="email" name="email" class="-full-width-input ng-pristine ng-valid ng-valid-email" localize="placeholder" placeholder="Enter your email..."> 1
<input type="password" ng-model="confirmPassword" name="confirmPassword" class="-full-width-input ng-pristine ng-valid" localize="placeholder" placeholder="Confirm your password"> 1
<input type="password" ng-model="password" name="password" class="-full-width-input ng-pristine ng-valid" localize="placeholder" placeholder="Enter your password"> 1
<input type="password" ng-model="password" name="password" class="-full-width-input ng-pristine ng-valid" localize="placeholder" placeholder="Enter your password" autocomplete="off"> 1
<input type="text" ng-model="login" name="username" class="-full-width-input ng-pristine ng-valid" localize="placeholder" placeholder="Your username is usually your email"> 1
5 distinct issues were found in the sample of 125 web pages.
More results from West of England Growth Hub