Accessibility

a11y/no-meta-refresh

No meta refresh reloads or redirects the page after a delay; redirect on the server or let people choose.

seriousstaticWCAG 2.2.1 · Afe-a11y-core

Why

A timed refresh moves the page away while someone is still reading it or filling it in, and sends screen reader users back to the top. People who read slowly lose their place every time.

Fix

Redirect with an HTTP 301 or 308 from the server (or an instant content="0; url=…" where the host allows nothing else). For live data, update the part that changes with script and a polite live region, and offer a pause.

Examples

<!-- bad -->
<meta http-equiv="refresh" content="30">
<!-- good: a server redirect, or a link the person follows -->
<p>This page has moved to <a href="/new">the new address</a>.</p>

Sources

Facts

Id
a11y/no-meta-refresh
Severity
serious
Check
static checked in the source by audit
Applies to
html angular vue svelte astro jsx
WCAG 2.2
2.2.1, level A
Same problem in
axe-core meta-refresh, Lighthouse meta-refresh
Taught by the skill
fe-a11y-core Accessibility, WCAG 2.2 map
Since version
0.1.0

Rule file on GitHub

Read it in the terminal

npx github:dawidolko/frontend-skills explain a11y/no-meta-refresh