- Success Criterion 1.1.1
- Conformance level A
Inline SVG Whose Title Text Doesn’t Match What It Shows
1.1.1 — Non-text Content
Scenario
Setting
A customer-support live-chat widget
What’s wrong
Inline SVG exposed to assistive technology but announcing raw <title>/<desc> mismatches or nothing at all.
Example
<svg role="img" aria-labelledby="svgTitle">
<title id="svgTitle">Icon</title>
<path d="..."/>
</svg>
<!-- the icon is actually an animated "agent is typing" indicator --> Why it matters
A customer waiting on live chat can't tell if the agent is actively typing a reply or the chat has gone silent, since the icon just announces "icon."
How to test
Check what the SVG's title/aria-label actually says versus what the graphic shows: a mismatched or generic name (e.g., 'icon') fails.
How to fix
Match the title text to what the icon represents in context. A generic placeholder like "icon" tells assistive tech nothing useful about a status indicator.
<svg role="img" aria-labelledby="svgTitle">
<title id="svgTitle">Agent is typing</title>
<path d="..."/>
</svg> Outcome
A customer hears "agent is typing" and knows to wait for a reply instead of assuming the chat disconnected.
Who is affected
Screen reader users relying on live-chat status indicators need the label to actually say what's happening.
Learn more
- Understanding Understanding document (opens in a new tab)
Related scenarios
- Product Photo Added as a CSS Background With No Alt Text
- Chart Alt Text That Never Explains What Each Color Means
- Outdated Alt Text That No Longer Matches the Image
- Alt Text Left as a Filename Instead of a Real Description
- Decorative Image Not Hidden From Screen Reader Users
- Decorative Image Given Alt Text Instead of Being Marked Silent