Elemento picture HTML
Un solo img basta en muchas páginas. Cuando necesitas archivos distintos para pantallas o formatos diferentes — un recorte ancho en escritorio, uno más cerrado en móviles, o un formato moderno con respaldo JPEG — el elemento picture ofrece candidatos. El navegador elige uno; tu img de respaldo cubre clientes antiguos y la accesibilidad.
Qué aporta picture
picture es un contenedor. Dentro colocas cero o más elementos source y exactamente un img de respaldo. Cada source puede declarar cuándo aplica (media) o qué formato es (type), y dónde está el archivo (srcset). El img no es decoración opcional: es el respaldo obligatorio y el lugar del alt.
Respuesta directa
Envuelve uno o más elementos <source> y un <img> de respaldo dentro de <picture>. Usa media para condiciones de viewport y type para formatos como WebP. El img sigue necesitando src y alt. Los principiantes pueden empezar con dos anchos de la misma foto antes de reunir cada formato moderno.
Dirección artística con media
Dirección artística significa recortes o diseños distintos para viewports distintos — no solo «la misma foto más pequeña.» media en source permite apuntar diseños anchos y estrechos a archivos diferentes.
picture con media e img de respaldo
html<picture>
<source media="(min-width: 800px)" srcset="images/wide.jpg">
<source media="(min-width: 400px)" srcset="images/medium.jpg">
<img src="images/small.jpg" alt="Mountain trail at sunrise">
</picture>
Leer la muestra de media
- En patrones de enseñanza habituales, las sources se listan de condiciones más específicas hacia otras más amplias; el navegador igual evalúa y elige una coincidencia
srcsetensourceapunta a la URL del archivo candidato- El
imgfinal aportasrcyaltcuando ninguna source coincide o cuando el soporte depicturees incompleto - Redimensiona la ventana en la práctica para ver qué archivo encaja — usa Network en DevTools si quieres confirmar la petición
Elección de formato con type
A veces la misma composición se entrega como WebP para navegadores compatibles y JPEG para el resto. type indica al navegador el tipo MIME para que pueda omitir formatos no soportados sin descargarlos primero.
picture con type e img de respaldo
html<picture>
<source type="image/webp" srcset="images/hero.webp">
<img src="images/hero.jpg" alt="Product hero on a clean desk">
</picture>
Mantén pequeño el alcance del primer día
No necesitas cada formato y cada breakpoint en el primer intento. Haz que un picture con dos candidatos sensatos funcione, mantén un alt honesto en el img y luego amplía. Los descriptores de densidad de srcset responsive y los atributos sizes avanzados llegan después, a medida que creces.
alt se queda en el img
No pongas el texto de accesibilidad solo en source. Los lectores de pantalla y el renderizado de respaldo dependen del img. Las reglas de decoración de la sesión Images siguen aplicando: las imágenes informativas necesitan un alt real; la decoración pura puede usar alt="".
picture frente a un img
Usa un img sencillo cuando un archivo basta. Recurre a picture cuando de verdad necesitas archivos distintos según condiciones — dirección artística por viewport o cambio de formato. Marcado extra sin necesidad real solo complica el mantenimiento.
Hábitos de orden y respaldo
Lista los elementos source antes del img. Incluye siempre el img. Si olvidas el respaldo, algunos navegadores y muchas herramientas de comprobación didácticas tratarán el patrón como incompleto. Prueba con una ventana estrecha y una ancha, y con un navegador que quizá no prefiera tu formato avanzado.
Práctica en tu editor
- Prepara dos anchos de la misma foto (o dos archivos claros para practicar).
- Construye un
picturecon dos media queries ensourcey unimgde respaldo. - Cambia el tamaño de la ventana del navegador y observa qué archivo encaja.
- Confirma que
altpermanece en elimg, no solo en un comentario. - Opcionalmente añade un
sourceWebP contype="image/webp"encima de unimgJPEG y confirma que el patrón sigue mostrando una imagen en todas partes.
Errores fáciles
- Olvidar el
imgde respaldo - Poner
altsolo ensourceen lugar de en elimg - Complicar con muchos formatos antes de que funcione el patrón básico de media
- Usar
picturecuando un soloimgoptimizado habría bastado - Recortes desalineados que sorprenden al usuario cuando el viewport cruza un breakpoint
- Confundir
srcsetensourcecon elhrefde un enlace
Resumen
pictureofrece varios candidatos de imagen; el navegador elige uno- Usa
sourcemás unimgde respaldo obligatorio mediaguía la elección por viewport;typeguía la elección de formatoaltse queda en elimg- Empieza simple: dos anchos o un formato moderno más un respaldo JPEG
🧠 Pon a Prueba tu Conocimiento
Pon a Prueba tu Conocimiento
Ponte a prueba con este cuestionario interactivo y descubre qué tan bien entiendes el tema
📝 Instrucciones
- Lee cada pregunta cuidadosamente
- Selecciona la mejor respuesta para cada pregunta
- Puedes repetir el quiz tantas veces como quieras
- Tu progreso se mostrará en la parte superior