Pages to scan
Every page in this target carries known accessibility defects, one case per page. This list is the scan surface: 138 pages covering 142 test cases.
It is 138 rather than 142 because 10 cases
concern the document itself: its title, its language, whether it has an
h1. Those can only happen once per page, so several of them
share a page.
Feed a scanner the list rather than crawling this page:
https://defectlab.app/alphagov/urls.txt
Content 5
- Content is not organised into well-defined groups or chunks, using headings, lists, and other visual mechanisms
- Content identified by location
- Content is not in correct reading order in source code
- First instance of abbreviation not expanded
- Plain language is not used
Page Layout 1
Colour and Contrast 6
- Colour alone is used to convey content
- Focus not visible
- Large text does not have a contrast ratio of at least 3:1 so does not meet AA
- Large text does not have a contrast ratio of at least 4.5:1 so does not meet AAA
- Small text does not have a contrast ratio of at least 4.5:1 so does not meet AA
- Small text does not have a contrast ratio of at least 7:1 so does not meet AAA
Typography 8
- All caps text found
- Blink element found
- Inadequate line height used
- Italics used on long sections of text
- Justified text found
- Long lines of text
- Marquee element found
- Very small text found
Language of content 9
- html element has an empty lang attribute
- html element has lang attribute set to wrong language
- html element has an invalid value in the lang attribute
- html element is missing a lang attribute
- lang attribute not used to identify change of language
- lang attribute used to identify change of language, but with invalid value
- lang attribute used to identify change of language, but with wrong language
- Text language changed without required change in direction
- Text language is in the wrong direction
Page Title 3
Headings 4
- Missing H1
- Empty heading
- Headings not structured in a hierarchical manner
- Text formatting used instead of an actual heading
Lists 4
- DT or DD elements that are not contained within a DL element
- Improperly nested lists
- LI element with no parent
- List not marked up as a list
Tables 11
- Table has an empty table header
- Table has no scope attributes
- Table has no table headings
- Table is missing a caption
- Table nested within table header
- Table nested within table
- Table that only has TH elements in it
- Table used for layout
- Table with column headers and double row headers
- Table with inconsistent numbers of columns in rows
- Table with some empty cells
Images 10
- A distraction is present, an animated gif
- Background image that conveys information does not have a text alternative
- Image alt attribute contains image file name
- Image has alt and title that are different
- Image has empty alt and non-empty title
- Image that conveys information has an empty alt attribute
- Image that conveys information has inappropriate alt text
- Image with no alt attribute
- Image with partial text alternative
- Image with presentation role has non-empty alt
Multimedia 3
- Embedded audio file is missing text alternative
- Embedded video file is missing text alternative
- Flashing content doesn't have warning
Links 20
- Adjacent links going to the same destination
- Blank link text
- Identifying links by colour alone
- Image link alt text repeats text in the link
- Image link with no alternative text
- Link contains only a full stop
- Link launches new window with no warning
- Link not clearly identifiable and distinguishable from surrounding text
- Link text does not make sense out of context
- Link text with identical title
- Link to #, invalid hypertext reference
- Link to a multimedia file, no transcript
- Link to an image, no text alternative
- Link to javascript, invalid hypertext reference
- Link to PDF does not include information on file format and file size
- Links not separated by printable characters
- Links to a sound file, no transcript
- Links with the same text go to different pages
- Non-specific link text
- Uninformative link text
Buttons 4
- Empty alt attribute on image button
- Empty button
- Image button has no alt attribute
- Uninformative alt attribute value on image button
Forms 19
- Empty label found
- Empty legend
- Error messages - no suggestion for corrections given, e.g. required format
- Errors are not identified
- Errors identified by colour only
- Errors identified with a poor colour contrast
- Field hint not associated with input
- Fieldset without a legend
- Form control that changes context without warning
- Form element has no label
- Group of check boxes not enclosed in a fieldset
- Group of radio buttons not enclosed in a fieldset
- Label element with for= attribute but not matching id= attribute of form control
- Labels missing when they would look clumsy for some form controls
- Left aligned form labels with too much white space
- Missing labels in checkboxes
- Non-unique field label found
- Placeholder no label
- Two unique labels, but identical for= attributes
Navigation 1
Keyboard Access 16
- Keyboard trap
- Accesskey attribute used
- Alert shows for a short time
- Concertina items don't get keyboard focus
- Dropdown navigation - only the top level items receive focus
- Fake button is not keyboard accessible
- Focus order in wrong order
- Keyboard focus assigned to a non focusable element using tabindex=0
- Keyboard focus is not indicated visually
- Lightbox - close button doesn't receive focus
- Lightbox - ESC key doesn't close the lightbox
- Lightbox - focus is not moved immediately to lightbox
- Lightbox - focus is not retained within the lightbox
- Link with a role=button does not work with space bar
- Tabindex greater than 0
- Tooltips don't receive keyboard focus
Frames 2
- iframe is missing a title attribute
- iframe title attribute does not describe the content or purpose of the iframe
CSS 5
- Content is not readable and functional when text is increased
- display:none used to visually hide content when it should be available to screenreader
- Non-decorative content inserted using CSS
- Page zoom - boxes that don't expand with the text
- visibility:hidden used to visually hide content when it should be available to screenreader
HTML 11
- Article element used to mark-up an element that's not an article/blog post etc.
- Deprecated center element
- Deprecated font element
- Duplicate id
- Empty paragraph
- Inline style adds colour
- Invalid ARIA role names
- Object not embedded accessibly - wmode parameter not set to window
- PRE element without CODE element inside it
- Spacer image found
- Start and close tags don't match