Skip to content

Time, motion & flashing

The Page Uses the Old `<blink>` Element

Blinking text pulls attention away from everything else, and people have no way to stop it while they read.

blinkWCAG 2.0Introduced in WCAG 2.0.Level AA — the minimum. Missing it blocks people outright.

Status
SeriousSerious — Significant friction, or information that is lost.CurrentScanners run this rule today.
Owner
DesignDevContentTest
Audit
AutomatedA scanner finds it, and a clean scan means it's fixed.
Save as PDF (opens in a new tab)

Why it matters

Moving or flashing content makes it hard to focus on the rest of the page. People with attention or reading difficulties may not be able to read at all. People must be able to pause, stop or hide it.

Today's browsers no longer make <blink> blink. But the tag shows someone wanted flashing text. Teams often rebuild the effect with CSS, which brings the problem back.

Who it affects

Who it affects, and how much
WhoWhat they experienceImpact
Cognitive and neurodivergent usersThe blinking keeps grabbing their eye, so they lose their place and can't finish reading.High impact
Low-vision users (magnification)Text that keeps vanishing is hard to read up close with a magnifier.Partial impact

Business & product impact

Business & product impact, with how much each claim weighs
AreaWhyImpact
LegalIt relates to WCAG 2.2.2 Pause, Stop, Hide, at Level A. Complaints under Australia's Disability Discrimination Act point to WCAG 2.2 Level AA, and EN 301 549 has the same rule.Moderate impact
ConversionDistracted people are less likely to finish a form or a checkout.Low impact
SEOSearch engines don't care either way. There's no search benefit.Low impact
Brand trustBlinking text looks dated and pushy. It can make the whole site feel untrustworthy.Moderate impact
Cost to fixA quick swap of one tag for another. Check shared templates so it's fixed everywhere.High impact

Fixing it in code

Highlighting an important message

Don't

<p><blink>Sale ends today</blink></p>

A screen reader says: “Sale ends today”

Do

<p><strong>Sale ends today</strong></p>

A screen reader says: “Sale ends today”

Strong text stands out without moving, and <blink> is no longer valid HTML.

Blinking rebuilt with CSS

Don't

.alert { animation: flash 1s infinite; }
@keyframes flash { 50% { opacity: 0; } }

Do

.alert { background: #fff3cd; border-left: 4px solid #b45309; }

A steady colour and border draw the eye without flashing forever.

Designer's handoff note

Show importance with colour, weight, an icon or position — not motion.

If something must move, keep it under five seconds or give people a clear pause button.

Quick test

Checklist

Pass
Nothing flashes, and you find no `<blink>` tag or blinking animation.
Fail
You find a `<blink>` tag, or text that keeps flashing with no way to stop it.

What a green scan still misses

A scanner finds the <blink> tag. It won't catch blinking made with CSS or JavaScript, so watch the page yourself.

Reference

Rule ID
blink
Raised by
  • axe-core: “<blink> elements are deprecated and must not be used”
WCAG
Other standards
EN 301 549 9.2.2.2 · RGAA 13.8.1
Last reviewed
14 October 2026