deadhead
element/blink

blink element

blink is obsolete and no current browser blinks it; don't recreate the effect, because blinking content fails WCAG 2.2.2 Pause, Stop, Hide.

  • Avoid
  • Deprecated
Severity
DeprecatedFormally obsolete, but inert.
Basis
Obsoleted by the specA standard defined it, then removed it.
Detectable
YesMatched exactly. Autofixable when the rule carries a fix.
Matches
blinkElement rule, inside <body>.
Fix
None — reports only
Impacts
Accessibility and Maintainability
Related
element/marquee, element/bgsound

<blink>New!</blink> switched its text on and off about once a second, for as long as the page stayed open. Netscape shipped it in the 1990s. It became shorthand for everything wrong with early web design, and it has been gone from every browser for more than a decade. It still turns up in old templates, pasted signatures and pages nobody has touched since.

Why avoid

It is obsolete, and nothing blinks anymore. The HTML Standard lists blink among the elements that “are entirely obsolete, and must not be used by authors”, maps it to HTMLUnknownElement, and defines no rendering for it at all. Firefox was the last engine that blinked. Mozilla removed the element in Firefox 23, in 2013. The markup is dead: its text simply shows, like any unknown inline element.

What it asked for is an accessibility failure, and that’s the part worth remembering. WCAG 2.2 Success Criterion 2.2.2 Pause, Stop, Hide, Level A, requires that “moving, blinking or scrolling information that (1) starts automatically, (2) lasts more than five seconds, and (3) is presented in parallel with other content” can be paused, stopped or hidden. Blinking is singled out because people with attention deficit disorders find it “distracting, making it difficult for them to concentrate on other parts of the web page”. W3C’s failure technique for this exact element, F47, is now itself marked obsolete, since “the blink element is obsolete in the HTML Living Standard and currently has no modern browser support”.

The danger today is the fix. Someone notices the tag does nothing and brings the effect back with a CSS animation. That is the same failure under a new name: technique F112, “using blinking content that lasts for more than five seconds without a mechanism to stop it”.

Use instead

Nothing. Remove the tag and keep the text:

<p><strong>Offer ends tonight.</strong></p>

If something genuinely needs attention, make it static and meaningful: <strong> for importance, or role="alert" for a message that has to be announced. Don’t use motion.

Detectability

Fully detectable by tag name. There is no autofix: removing the element would delete the text inside it, and fixes can’t unwrap an element to keep its content.

Resources

This page is generated from content/rules/element/blink.md, the same file the linter is built from. Think the rule is wrong, or that browsers moved on? Say so — that is the most useful issue you can file.