frame-title
Web validation
<frame> and <iframe> elements must include an accessible name that describes their content or purpose.<frame> and <iframe> elements embed external resources inside a page. Without a brief, descriptive name, assistive technology can announce only generic information, forcing people to explore each frame to discover its purpose. Providing a unique, concise name lets screen-reader users list frames, understand their role immediately, and move quickly to the content they need.
Pass Patterns
Frame has a descriptive title
The title attribute clearly states what appears inside the frame.
<iframe
src="https://weather.example.com/new-york"
title="New York City weather forecast">
</iframe>Using aria-label
An <iframe> with an aria-label that describes its content.
<iframe
src="https://map.example.com/pizza/my-location"
aria-label="Pizzerias within a three-mile radius">
</iframe>Using aria-labelledby
An <iframe> with an aria-labelledby that describes its content.
<h2 id="landings-heading">
Landings planned in the next two hours, JFK, New York
</h2>
<iframe
src="https://flights.example.com/landings/JFK"
aria-labelledby="landings-heading">
</iframe>Fail Patterns
Missing name
Assistive technology announces only “frame” or the URL.
<iframe src="promo.html"></iframe>Empty aria-label attribute
This <iframe> has an empty aria-label, which results in no accessible name.
<iframe
src="https://map.example.com/pizza/my-location"
aria-label="">
</iframe>Non-existent aria-labelledby references
This <iframe> uses aria-labelledby to reference a non-existent element.
<iframe
src="https://flights.example.com/landings/JFK"
aria-labelledby="non-existing-landings-heading">
</iframe>Referring an empty element via aria-labelledby
This <iframe> references an empty element via aria-labelledby, which doesn’t provide a name.
<span id="landings-heading"></span>
<iframe
src="https://flights.example.com/landings/JFK"
aria-labelledby="landings-heading">
</iframe>WCAG techniques
Sufficient techniques
ACT Rules
Try It Yourself
Using a screen reader
New to screen reader testing, or need a refresher?
Review this article first: Practical guides for using screen readers
- Load the page and open a screen reader.
- Open the screen reader’s element list (for example,
NVDA + F7on Windows orVO + Uon Mac). - Choose the frames or landmarks view (depending on where iframes are listed in your screen reader).
Expected result: Each frame is listed by its descriptive title, such as “Conference agenda”.
Actual result: Untitled frames are announced simply as “frame” or by URL, making them hard to identify.
Inspecting the browser dev-tools
- Open the Accessibility Tree panel.
- Select the
<iframe>element.
Expected result: The Name field shows the text you provided.
Actual result: If unnamed, Name is empty.
FAQ
How does this issue relate to 4.1.2 Name, role, value?
SC 4.1.2 requires every user-interface component to expose a programmatically determinable name and role. With no accessible name this information is not exposed programmatically, which forces screen reader users to enter the iframe and explore its content to assess whether it is relevant or important to them.
Why is this issue marked as Serious?
Untitled frames disrupt navigation for screen-reader and voice-control users. Without a descriptive accessible name, they must enter each frame or rely on unhelpful announcements such as URLs, increasing cognitive load and time to complete tasks. Because the barrier affects essential understanding and interaction, it is classified as Serious.
Standards and Regulations
| Standard | Success Criterion | Reference |
|---|---|---|
| WCAG 2.2 | 4.1.2 Name, Role, Value (A) | For all user interface components, the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to assistive technologies. |
| EN 301 549 | 9.4.1.2 Name, Role, Value | Same as the WCAG text. |
| Section 508 | 1194.22(i) | Frames shall be titled with text that facilitates frame identification and navigation. |
| 508 Trusted Tester | 4.1.2-iframe-name, 12.D | The combination of accessible name and description for each <iframe> describes its content. |