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:

    Full name <input type="name">

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.

72.8% done

How close this website is to fixing this issue.

HTML Found on page Issues
<select class="sort-by" name="sort-by" data-attr-element="select-dropdown">...</select> 16
<input type="text" name="Extra info" value size="10" maxlength="10" class id="q112967_comment" title="If you are a human, do not fill in this field."> 11
<textarea name="q112967:q2" cols="30" rows="3" onkeyup="if (this.value.length ></textarea> 4
<button class="dot slider_control" onclick="currentSlide(2)"> </button> 3
<button class="dot slider_control dot__active" onclick="currentSlide(1)"> </button> 3
37 distinct issues were found in the sample of 125 web pages.
More results from Ofcom