📝 BLOG

الصور Responsive: srcset، sizes y Art Direction

الصور responsive sirven imágenes optimizadas para diferentes tamaños de pantalla y resoluciones. يغطي هذا الدليل técnicas srcset، sizes y art direction.

آخر تحديث:

إعداد: Gsetsoft

الصور Responsive: srcset، sizes y Art Direction

لماذا الصور responsive مهم

Dispositivos diferentes (mobile، tablet، desktop) tienen diferentes tamaños de pantalla y resoluciones. un solo tamaño de imagen no es óptimo para todos los dispositivos.

Las imágenes grandes desperdician ancho de banda en móvil. las imágenes pequeñas se ven pixeladas en escritorio. las imágenes responsivas sirven el tamaño correcto para cada dispositivo.

Core Web Vitals: las imágenes responsivas mejoran las métricas LCP y CLS.

Atributo srcset

srcset proporciona al navegador opciones de imagen en diferentes resoluciones. el navegador selecciona la imagen más apropiada según el DPR y el tamaño del viewport.

Descriptor de ancho: <img srcset="small.jpg 400w، medium.jpg 800w، large.jpg 1200w" src="medium.jpg" alt="...">. la unidad w especifica el ancho natural de la imagen.

Descriptor de densidad: <img srcset="image.jpg 1x، image@2x.jpg 2x" src="image.jpg" alt="...">. la unidad x especifica la densidad de píxeles del dispositivo.

Selección del navegador: el navegador selecciona la imagen más apropiada según el tamaño del viewport، DPR y condiciones de red. esta selección es automática y optimizada.

Atributo sizes

sizes especifica el tamaño que la imagen ocupará en el viewport. el navegador usa sizes junto con srcset para seleccionar la imagen más apropiada.

Ejemplo: <img srcset="small.jpg 400w، medium.jpg 800w، large.jpg 1200w" sizes="(max-width: 600px) 100vw، (max-width: 1200px) 50vw، 33vw" src="medium.jpg" alt="...">.

Condiciones de media: (max-width: 600px) 100vw → en pantallas menores de 600px، la imagen ocupa el 100% del ancho del viewport.

Fallback: el último valor (33vw) es el tamaño por defecto. este valor se usa cuando ninguna condición de media coincide.

vw (viewport width): 100vw = ancho del viewport. 50vw = la mitad del ancho del viewport.

Art direction

Art direction sirve diferentes composiciones de imagen (crop، zoom) en diferentes tamaños de pantalla. se hace con el elemento <picture>.

Ejemplo: <picture><source media="(min-width: 800px)" srcset="desktop.jpg"><source media="(min-width: 400px)" srcset="tablet.jpg"><img src="mobile.jpg" alt="..."></picture>.

Casos de uso: diferentes crops para imágenes hero. imagen vertical en móvil، horizontal en escritorio. diferentes versiones para logos e iconos.

Selección de formato: con <picture> también se pueden servir diferentes formatos: <source type="image/webp" srcset="image.webp"><img src="image.jpg" alt="...">.

Lazy loading y async decoding

loading="lazy": carga la imagen solo cuando se acerca al viewport. aumenta la velocidad de carga de la página y ahorra ancho de banda.

decoding="async": separa el proceso de decodificación de la imagen del hilo principal. no bloquea el renderizado de la página.

fetchpriority="high": alta prioridad para la imagen LCP. el navegador carga esta imagen antes.

Placeholder: muestre un placeholder de baja resolución con la técnica blur-up. se muestra un placeholder borroso mientras la imagen carga.

Consejos de rendimiento

Formatos de imagen: use WebP o AVIF. 25-50% más pequeño que JPEG. sirva JPEG/PNG como fallback.

Compresión: comprima las imágenes. use TinyPNG، Squoosh o ImageOptim. quality 80-85 suele ser suficiente.

Dimensiones: agregue atributos width y height a las imágenes. previene CLS (Cumulative Layout Shift).

CDN: sirva las imágenes desde CDN. los CDN de imágenes como Cloudinary، Imgix realizan resize y conversión de formato automáticamente.

Prueba de imágenes responsivas: verifique qué imagen se carga en la pestaña Network de Chrome DevTools. pruebe en diferentes viewports.

اختيار الخصوصية

تدعم ملفات الارتباط الأساسية الأمان والجلسات. نعد الزيارات الأساسية أيضًا؛ وبموافقتك نفعّل تحليلات استخدام إضافية. سياسة ملفات الارتباط