What This Rule Checks
The <meta http-equiv=”refresh”> attribute automatically refreshes or redirects a webpage after a set period. However, this practice can disrupt users who rely on assistive technologies or have slower reading speeds. For users with cognitive or physical impairments, automatic page refreshes can cause disorientation and make it difficult to interact with the page content.
Who Is Affected
This issue primarily affects: Blind users, who rely entirely on screen readers or braille displays to navigate and interact with content; Deafblind users, who rely on braille displays and cannot access visual or auditory content; Mobility users, who navigate using keyboards, switches, voice control, or other assistive input devices.
Why This Matters
This AAA criterion is stricter than the AA version (meta-refresh) and allows no exceptions for timed redirects. All automatic redirects are considered disruptive to users with cognitive disabilities and those using assistive technologies.
How to Fix
To ensure that users are not automatically redirected without warning:
Remove the http-equiv=”refresh” attribute: Avoid using this attribute within the <meta> element.
Handle Refresh with JavaScript: If refreshing the page is necessary, use JavaScript to manage it. Additionally, provide users with controls to pause, extend, or turn off the refresh as needed.
Give Users Control: Ensure that any automatic actions like page refreshes are user-controlled or provide an option to delay, extend, or prevent it.
Code Examples
<!-- Any timed meta refresh (no exceptions) -->
<meta http-equiv="refresh" content="5;url=/updated-page">
Copy
<!-- Use server-side redirects instead -->
<!-- HTTP 301 redirect (server configuration) -->
<!-- If redirect must happen client-side -->
<a href="/updated-page">
This page has moved. Click here to continue.
</a>
Copy
Common Mistakes to Avoid
- Using meta refresh for any purpose, even with short delays.
- Assuming that instant redirects (content=”0″) are acceptable.
- Not providing a manual link to the destination as a fallback.
Tip: Page-level metadata and settings affect the entire browsing experience. Language declarations, viewport settings, and page titles are foundational to accessibility and affect every user on every page load.
Related WCAG Criteria
- 2.2.4: Interruptions
- 3.2.5: Change on Request