Warning Iframe sin atributo title

Por qué todo <iframe> necesita un atributo title que describa su contenido embebido, de la misma forma en que una imagen necesita texto alternativo.

El validador marca cualquier <iframe> sin atributo title, o con uno presente pero vacío.

Ejemplo

<!-- Incorrecto -->
<iframe src="/checkout/pago"></iframe>

<!-- Correcto -->
<iframe src="/checkout/pago" title="Formulario de pago"></iframe>

Por qué importa

Un <iframe> embebe todo un documento separado, y los lectores de pantalla lo anuncian como una región distinta cuando un usuario navega por landmarks o frames — pero sin title, ese anuncio es solo "frame", sin ninguna indicación de qué hay adentro. Un usuario vidente puede darse cuenta por el contenido renderizado, pero un usuario de lector de pantalla tiene que entrar al frame y empezar a explorar a ciegas para averiguarlo. Esto es especialmente común con embebidos de terceros (widgets de pago, mapas, reproductores de video) que se colocan en una página sin agregar un título descriptivo junto a ellos.

Frequently asked questions

¿Qué hace bueno a un título de iframe?

Una descripción corta de lo que contiene o hace el frame — "Formulario de pago", "Video de YouTube: demo del producto", "Mapa interactivo de ubicaciones de tiendas". Debería decirle a un usuario de lector de pantalla si vale la pena entrar al frame, de la misma forma en que el texto alternativo lo hace para las imágenes.

¿Esto aplica a iframes usados para anuncios o píxeles de seguimiento?

Técnicamente sí, aunque esos suelen estar ocultos para todos los usuarios mediante CSS o tamaño, en cuyo caso normalmente no forman parte del contenido accesible de la página en absoluto. Para cualquier embebido visible y con significado, vale la pena agregar un título real.