Visual Example
The placeholder is text that appears inside a form control by default. In the below examples it’s the word “Search” and dashes.
Compliant Example:
Non-Compliant Example:
Acceptance Criteria
Don’t place characters, such as dashes “-----” or parenthesis ”( )” in the placeholder.
Those characters will be announced by the screen reader as follows:
It will be announced by screen readers as “dash, dash, dash, dash”.
As a screen reader user I should:
be provided with a form label
be able to explicitly associate the text label with the form control
When the form field has keyboard focus:
the screen reader should announce the form label and then the text in the placeholder
if the text in the placeholder is the same as the form label the placeholder will not be announced by the screen reader
Markup and Code
<form id="sfgov-search-form" role="search" novalidate="novalidate" method="post"> <div> <label for="search-input">Search</label> <input id="serch-input" type="text" placeholder="Search" /> </div> </form>