HTML
Tutorial HTML: Optimización de la carga de la página (Lazy loading)
HTML lazy loading: carga diferida. Domina la técnica de lazy loading en HTML para mejorar el rendimiento con ejemplos prácticos.
Aprende HTML GRATIS y certifícateLa optimización de la carga de la página, también conocida como "Lazy Loading", es una técnica de optimización web que carga los contenidos de la página solo cuando son necesarios. En lugar de cargar todo el contenido de una página de una sola vez, lazy loading solo carga los elementos que son visibles para el usuario, como las imágenes o los vídeos que están en la parte superior de la página. A medida que el usuario se desplaza hacia abajo, se cargan los demás elementos.
Esta técnica mejora la velocidad de carga de la página, reduce el uso de ancho de banda y mejora la experiencia del usuario, especialmente en dispositivos móviles o en conexiones a internet lentas.
En términos de HTML, la implementación de lazy loading puede realizarse utilizando el atributo loading
en la etiqueta img
y iframe
. Este atributo tiene dos posibles valores: lazy
y eager
.
Cuando se usa loading="lazy"
, el navegador carga la imagen o el iframe solo cuando están cerca de la vista actual del usuario. Por ejemplo:
<img src="imagen.jpg" loading="lazy" alt="Imagen de prueba" />
Cuando se usa loading="eager"
, el navegador cargará el recurso inmediatamente, independientemente de donde se encuentre en la página. Este es el comportamiento predeterminado para las imágenes y iframes que no tienen un atributo loading
especificado. Por ejemplo:
<img src="imagen.jpg" loading="eager" alt="Imagen de prueba" />
En el caso de imágenes muy grandes o de varios iframes en una sola página, el uso de loading="lazy"
puede mejorar significativamente la velocidad de carga de la página.
Cabe mencionar que el atributo loading
es una característica relativamente nueva en HTML y está soportada en la mayoría de los navegadores modernos, pero no en todos. Para soportar navegadores más antiguos, se pueden usar bibliotecas JavaScript como lozad.js o Intersection Observer API para implementar lazy loading.
Un ejemplo utilizando la biblioteca lozad.js sería:
<!-- HTML -->
<img data-src="imagen.jpg" class="lozad" alt="Imagen de prueba" />
<!-- JavaScript -->
<script src="lozad.min.js"></script>
<script>
// Inicializa Lozad
const observer = lozad();
observer.observe();
</script>
En este caso, el atributo data-src
contiene la ruta de la imagen a cargar y la clase lozad
indica que esta imagen se debe cargar de manera diferida.
Un ejemplo con la Intersection Observer API de JavaScript sería:
let observer = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if(entry.isIntersecting) {
let img = entry.target;
img.src = img.dataset.src;
observer.unobserve(img);
}
});
});
document.querySelectorAll('img[data-src]').forEach(img => {
observer.observe(img);
});
En este caso, se está creando un observador que vigila cuando las imágenes con el atributo data-src
entran en el viewport del navegador, y entonces se carga la imagen.
Estos son solo algunos ejemplos de cómo implementar la carga diferida en HTML y JavaScript. La técnica exacta puede variar según el proyecto y las necesidades del mismo.
Ejercicios de esta lección Optimización de la carga de la página (Lazy loading)
Evalúa tus conocimientos de esta lección Optimización de la carga de la página (Lazy loading) con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Todas las lecciones de HTML
Accede a todas las lecciones de HTML y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Introducción A Html
Introducción Y Entorno
Doctype
Sintaxis Y Estructura
Elementos Y Etiquetas
Sintaxis Y Estructura
Atributos
Sintaxis Y Estructura
Anidación De Etiquetas
Sintaxis Y Estructura
Comentarios
Sintaxis Y Estructura
Encabezados (H1-h6)
Textos Y Enlaces
Enlace (A)
Textos Y Enlaces
Párrafo (P)
Textos Y Enlaces
Listas (Ul, Ol, Li)
Textos Y Enlaces
Imagen (Img)
Textos Y Enlaces
División (Div)
Estructura De Página
Etiquetas Semánticas (Article, Section, Header, Footer, Nav, Aside)
Estructura De Página
Tablas (Table, Tr, Td, Th)
Estructura De Página
Formularios (Form, Input, Select, Textarea, Button)
Estructura De Página
Imágenes Vectoriales (Svg)
Elementos Multimedia
Incrustación De Contenido (Iframe)
Elementos Multimedia
Audio (Audio)
Elementos Multimedia
Video (Video)
Elementos Multimedia
Estilo Incorporado (Style)
Metadatos Y Estilización Incorporada
Metadatos (Meta, Title, Link)
Metadatos Y Estilización Incorporada
Atributos De Aria
Metadatos Y Estilización Incorporada
Navegación Por Teclado
Metadatos Y Estilización Incorporada
Contraste Y Legibilidad
Características Avanzadas Y Optimización
Validación De Html
Características Avanzadas Y Optimización
Compatibilidad Con Navegadores
Características Avanzadas Y Optimización
Optimización De La Carga De La Página (Lazy Loading)
Características Avanzadas Y Optimización
Certificados de superación de HTML
Supera todos los ejercicios de programación del curso de HTML y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.
En esta lección
Objetivos de aprendizaje de esta lección
- Comprender el concepto de lazy loading y su importancia para la optimización de la carga de páginas web.
- Aprender a implementar lazy loading utilizando el atributo
loading
en las etiquetasimg
eiframe
en HTML. - Familiarizarse con las bibliotecas JavaScript, como lozad.js, y la Intersection Observer API para implementar lazy loading en navegadores modernos y antiguos.
- Adquirir conocimientos sobre cómo cargar imágenes y elementos de manera diferida para mejorar el rendimiento de la página y la experiencia del usuario.