El Lenguaje de la Web: HTML, CSS y JavaScript — La Tríada que Mueve el Mundo

La World Wide Web se basa en tres tecnologías fundamentales, pero HTML (HyperText Markup Language) es el lenguaje base — el esqueleto sobre el cual se construye cada página web.

🏗️ HTML: Estructura y Semántica

🎨 CSS: Presentación y Diseño

  • Rol: Define cómo se ve el HTML — colores, fuentes, espaciado, diseño en grid/flex, animaciones, puntos de interrupción responsivos.
  • Cascada: Predeterminados del navegador → Estilos del usuario → Estilos del autor (en línea > ID > clase > elemento).
  • CSS Moderno (2024): Container Queries, `:has()`, Anidamiento CSS, Subgrid, `color-mix()`, `view-transitions`.

⚡ JavaScript: Comportamiento e Interactividad

  • Rol: Define qué sucede — manipulación del DOM, fetch/API, gestión de estado, UI compleja (React/Vue/Svelte), WebAssembly.
  • Características ES2024: `Object.groupBy`, `Promise.withResolvers`, API Temporal (fechas), Decoradores.
  • Ejecución: Bucle de eventos de un solo hilo + cola de microtareas. Compilado JIT (V8, SpiderMonkey, JavaScriptCore).

Cómo se Combinan: La Ruta de Renderizado Crítica

  1. Bytes de HTML → Árbol DOM (Modelo de Objetos del Documento).
  2. Bytes de CSS → Árbol CSSOM (Modelo de Objetos CSS).
  3. DOM + CSSOM → Árbol de Renderizado (solo nodos visibles + estilos calculados).
  4. Diseño (Reflujo) → Pintura → Composición → Píxeles en Pantalla.
  5. JavaScript se ejecuta, muta DOM/CSSOM → el ciclo se repite (incremental).

Más Allá de la Tríada: Tecnologías Web Esenciales

  • HTTP/2, HTTP/3 (QUIC): Transporte cifrado y multiplexado.
  • Web APIs: Fetch, WebRTC, WebGL/WebGPU, Web Workers, Service Workers (PWA).
  • WASM (WebAssembly): Casi velocidad nativa para C++/Rust/Go en el navegador.
  • Accesibilidad (ARIA, WCAG 2.2): HTML semántico + roles/estados para tecnología de asistencia.

HTML es el único lenguaje obligatorio — una página solo con HTML funciona. CSS/JS lo mejoran. Pero las aplicaciones web modernas son inseparables de la tríada.