A: Frames must have an accessible name (WCAG 4.1.2)
frame-title
Ensure that <iframe> and <frame> elements have a non-empty title attribute.
This means
Every embedding via <iframe> or deprecated <frame> requires a meaningful, non-empty title. The title concisely describes the purpose or content of the embedded area, for example "Branch Map Downtown" or "YouTube Video Introduction Accessibility".
Impact
Without a comprehensible title, screen readers announce the embedding only as "frame." Users do not know what to expect, making navigation and orientation difficult, and the page violates WCAG.
Recommendation
-
Set a meaningful title: short, clear, goal-oriented; no placeholders like "frame1" or "content."
-
Localize: title in the language of the page.
-
Unique per page, especially with multiple iframes.
-
Purely technical or decorative embedding: if not relevant for people, remove from assistive technology (
aria-hidden="true"andtabindex="-1") or better remove entirely. -
No replacement by aria label: title remains decisive for naming frames.
Example
Problematic
<iframe src="/embed/video"></iframe> <!-- no title -->
<iframe src="/map" title=""></iframe> <!-- empty title -->
<iframe src="/ads" aria-label="Advertisement"></iframe> <!-- aria-label does not replace title -->
Better
<iframe src="/embed/video" title="Product Video Accessibility"></iframe>
<iframe src="/map" title="Branch Map Berlin Downtown"></iframe>
Deprecated framesets (for completeness only)
<frameset cols="25%,75%">
<frame src="nav.html" title="Navigation">
<frame src="content.html" title="Main Content Product Details">
</frameset>
Related WCAG criterion:
WCAG 4.1.2 - Name, Role, Value