Checks if elements that usually should be present, are actually there and if elements that probabaly shouldn’t be present, aren’t there.
<header>
<nav>
<footer>
<main>
a:not([href])
Placeholder link (fine) or fake link/button (bad)a[href="#"]
Link with empty hasha[tabindex]
Is fake link?[role="menuitem"]
menu
andmenuitem
must not be used for typical navigations on websites[role="button"]
Is fake button?[role="link"]
Is fake link?div[onclick]
Is fake link/button?img[onclick]
Is fake link/button?label[aria-label]
Redundant labellabel a
button a
a button
Nesting interactive elements should be avoidedsection > section
article > section
Excessive use of sectioning content[style]
It’s a best practice to avoid inline stylestable[role="grid"]
Are you sure about usingrole="grid"
?
- The accessibility of placeholder links
- Don’t Use ARIA Menu Roles for Site Nav
- #HTMHell 22 the good ol’ div link
- #HTMHell 13 link or label
- #HTMHell 10
<section>
is no replacement for<div>
- #HTMHell 8 anchor tag used as button
- #HTMHell 6 link with void operator as href value
- #HTMHell 5 button-like-link
- #HTMHell 3 image-buttons
- #HTMHell 2 div with button role
- #HTMHell 1 button disguised as a link
- ARIA Grid As an Anti-Pattern