CodeForge

Maquetación Web Dinámica / JavaScript para maquetadores: darle vida al DOM

Reto: una página viva con scroll, navbar y modal

Reto65 min60 XP

El examen de "darle vida al DOM": una landing que se SIENTE moderna. Sus secciones aparecen al bajar, su navbar se transforma al hacer scroll, y un botón abre un modal accesible. Son los tres patrones que verás en casi toda página profesional — y al integrarlos tú, en una sola página, demuestras que ya sabes hacer que una web cobre vida.

Reto

La landing que respira

Media60 min60 XP(×2 sin mirar la solución)

Qué debes construir

Una página de una sección con estos tres comportamientos vivos:

  1. Scroll reveals: las secciones entran con un fade-up al aparecer en pantalla (IntersectionObserver), respetando prefers-reduced-motion.
  2. Navbar inteligente: la barra superior se vuelve .compacta (más baja, con sombra) cuando el usuario deja atrás el hero, y vuelve a su estado grande arriba del todo.
  3. Modal accesible: un botón (ej. "Suscríbete") abre un modal que gestiona el foco (entra al abrir, vuelve al cerrar) y cierra con el botón, con Escape y con clic en el fondo.

Reglas

  • HTML + CSS + JavaScript, sin librerías.
  • Reutiliza lo aprendido: IntersectionObserver (lección 6) para reveals y navbar; el patrón de modal accesible (lección 7).
  • Regla de oro en todo: JS cambia clases/estado, el CSS pinta. Y prefers-reduced-motion respetado en las animaciones.

60:00

Cuando estés listo, arranca el reloj.

Qué sigue

Módulo 14 cerrado: sabes darle vida al DOM — seleccionar, reaccionar, renderizar desde datos, y montar los patrones de UI clásicos con accesibilidad. Pero escribiste todo con JavaScript "a secas", y en apps grandes eso se vuelve frágil: un typo en un nombre de propiedad no avisa hasta que rompe en producción. El módulo 15 trae la red de seguridad — TypeScript aplicado a la maquetación: los mismos patrones, ahora con el editor avisándote de los errores ANTES de que ocurran.