Saltar al contenido
Curso de CSS
Todos los cursos Ir al ejercicio →

Cómo funciona CSS

  • ⏱ 35 minutos
  • 📶 Nivel: principiante
  • 🧩 Incluye ejercicio

💡 🎯 Al terminar esta lección podrás…

  • Explicar cómo el navegador combina HTML y CSS para pintar una página.
  • Predecir qué regla gana usando la cascada.
  • Distinguir qué propiedades se heredan y cuáles no.
  • Usar las herramientas del navegador para entender por qué un estilo no se aplica.

1.Qué hace CSS y cómo lo lee el navegador

Cuando abres una página, el navegador hace tres cosas, en este orden:

  1. Lee el HTML y construye un árbol con todos los elementos (el DOM).
  2. Lee el CSS y construye una lista de reglas (el CSSOM).
  3. Combina ambos: para cada elemento decide qué reglas le tocan, calcula su aspecto final, lo coloca en la pantalla y lo pinta.

Ese cálculo se repite si cambias el tamaño de la ventana, pasas el cursor por encima o añades una clase con JavaScript. Por eso un mismo HTML puede verse completamente distinto con otro CSS.

Dos archivos, una página

HTML
qué es cada cosa
CSS
cómo se ve
Página
lo que ves

📌 Nota · Qué sabes de antemano

Este curso continúa el curso de HTML. Si ya hiciste la lección 7 de HTML, esta primera lección te sonará, pero aquí vamos a fondo: entenderás por qué el navegador elige un estilo y no otro.

2.Anatomía de una regla

Dos reglas con comentario
/* Títulos: color y tamaño */
h1 {
  color: #4f46e5;
  font-size: 2rem;
}

p { line-height: 1.7; }

⚠️ Importante · Si algo no se aplica

El navegador no avisa de los errores de CSS: simplemente ignora la declaración que no entiende. Una propiedad mal escrita (colour), un valor inválido (color: 10px) o un ; olvidado hacen que el estilo «no funcione» sin mensaje alguno. Aprenderás a detectarlo con las herramientas del navegador en la sección 7.

3.Tres formas de añadir CSS

FormaEjemploCuándo usarla
Archivo externo<link rel="stylesheet" href="estilos.css">Siempre que puedas. Un archivo sirve a todas las páginas, se guarda en caché y mantiene el HTML limpio
Etiqueta <style><style> p { color: red } </style>Pruebas, ejemplos y estilos críticos de una sola página
Atributo style<p style="color: red">Valores que cambian con JavaScript. Evítalo en el resto: no se puede reutilizar y tiene una prioridad muy alta
Enlazar CSS desde el head
<head>
  <meta charset="UTF-8">
  <title>Mi página</title>
  <link rel="stylesheet" href="css/estilos.css">
</head>

💡 Consejo · Varios archivos

Puedes enlazar varios archivos. Se aplican en el orden en que aparecen, y un archivo posterior puede cambiar lo que dijo uno anterior. Este mismo curso usa uno solo, assets/estilos.css.

4.La cascada: quién gana

Imagina que dos reglas piden cosas distintas para el mismo elemento:

¿De qué color será el título?
h1 { color: blue; }
h1 { color: red; }

CSS significa Cascading Style Sheets («hojas de estilo en cascada») porque tiene reglas para resolver estos conflictos. El navegador revisa tres criterios, en este orden:

  1. Importancia y origen. Las declaraciones con !important ganan a las normales (y los estilos del navegador son los más débiles).
  2. Especificidad. Un selector más específico (#portada, .aviso) gana a uno más general (p). La estudiarás a fondo en la próxima lección.
  3. Orden. Si todo lo anterior empata, gana la declaración que aparece después.

En el ejemplo, empatan en importancia y especificidad, así que gana la última: el título será rojo.

✏️ ¿Quién gana?

Predice el resultado antes de mirar. Después prueba mover las reglas de lugar y observa qué cambia (y qué no cambia).

⚠️ Importante · No uses !important como atajo

!important parece una solución rápida, pero obliga a usar más !important para superarlo, y el código se vuelve imposible de mantener. Reserva su uso para casos muy concretos.

5.Herencia

Algunas propiedades pasan de un elemento a sus hijos sin que lo pidas. Si pones color: navy en el <body>, todos los textos dentro (párrafos, listas, enlaces…) se verán azules salvo que otra regla diga lo contrario.

Se heredan (texto)No se heredan (caja)
color, font-family, font-size, font-weight, line-height, text-align, letter-spacing, list-style, cursormargin, padding, border, background, width, height, display, position

La lógica: si el texto de un contenedor es azul, es natural que lo de dentro también; pero que un párrafo tenga el borde de su contenedor sería absurdo.

Controlar la herencia

ValorQué hace
inheritFuerza a heredar el valor del padre
initialVuelve al valor inicial de CSS (no el del navegador)
unsetinherit si la propiedad se hereda; initial si no
revertVuelve al estilo por defecto del navegador
✏️ Herencia en acción

💡 Consejo · Aprovecha la herencia

Define la tipografía y el color una sola vez en body y deja que todo lo herede. Así evitas repetir font-family en cada regla y, si mañana cambias de fuente, es una sola línea.

Aunque no escribas nada de CSS, la página no se ve «vacía»: los títulos son grandes, los párrafos tienen espacio, los enlaces son azules y subrayados. Es la hoja de estilos del navegador, y cada navegador tiene la suya con pequeñas diferencias.

Por eso muchas personas empiezan sus proyectos con un reseteo que elimina esas diferencias. Este es uno moderno y breve, suficiente para empezar:

Un reseteo mínimo moderno
*, *::before, *::after { box-sizing: border-box; }

body { margin: 0; line-height: 1.6; }

img, video, svg { max-width: 100%; height: auto; display: block; }

input, button, textarea, select { font: inherit; }

7.Las herramientas del navegador: tu mejor aliada

Todos los navegadores modernos traen herramientas para ver y modificar el CSS de cualquier página. Se abren con F12 (o clic derecho → Inspeccionar). Estas son las partes que más usarás:

PartePara qué sirve
ElementosVer el HTML y seleccionar un elemento con el icono del cursor
EstilosVer qué reglas se aplican, cuáles están tachadas (perdieron) y editar valores en vivo
Calculado (Computed)El valor final de cada propiedad después de la cascada
Modelo de cajaUn dibujo con el margen, borde, relleno y contenido del elemento
Modo dispositivoProbar la página en pantallas de celular y tableta (Ctrl + Shift + M)
  1. Haz clic derecho sobre un título de esta misma página y elige Inspeccionar.
  2. En el panel Estilos, cambia el valor de color o desmarca una declaración con la casilla.
  3. Observa cómo cambia la página al instante. Nada se guarda: al recargar vuelve todo como estaba.

🔍 Ejemplo · Un estilo que no se aplica

Si escribes una regla y no ves efecto, abre las herramientas, selecciona el elemento y busca tu regla. Si aparece tachada, otra regla con más prioridad la ganó. Si no aparece, el selector no coincide con el elemento. Si aparece con un triángulo amarillo, la propiedad o el valor es inválido.

8.Errores frecuentes

📒 Apuntes para llevar

  • CSS describe cómo se ve el HTML; el navegador combina el DOM y el CSSOM para pintar la página.
  • Una regla es selector { propiedad: valor; }. Los errores se ignoran sin avisar.
  • Lo recomendable es un archivo .css enlazado con <link rel="stylesheet">.
  • Conflictos: la cascada decide por importancia, especificidad y, al empatar, orden (gana lo último).
  • La herencia pasa propiedades de texto (color, font-*, line-height) a los hijos; las de caja no.
  • inherit, initial, unset y revert controlan la herencia.
  • Un reseteo mínimo elimina diferencias entre navegadores: box-sizing: border-box y margin: 0 en body.
  • Con F12 inspeccionas, editas en vivo y descubres por qué un estilo no se aplica.

9.Glosario

TérminoSignificado
DOM / CSSOMRepresentaciones internas del HTML y del CSS que el navegador combina para pintar.
SelectorParte de la regla que indica a qué elementos se aplica.
DeclaraciónPareja propiedad: valor; dentro de las llaves.
CascadaSistema que decide qué regla gana cuando dos chocan.
HerenciaPaso automático de ciertas propiedades de un elemento a sus hijos.
!importantMarca una declaración como prioritaria; úsala con mucha precaución.
ReseteoConjunto breve de reglas que unifica el punto de partida entre navegadores.
Computed (calculado)El valor final de una propiedad, ya resuelta la cascada.

🧠 Comprueba lo aprendido

Elige una respuesta en cada pregunta. Verás al instante si acertaste y por qué.

Dos reglas con el mismo selector dan colores distintos al mismo elemento. ¿Cuál gana?

¿Cuál de estas propiedades se hereda por defecto?

Una propiedad en las herramientas aparece tachada. ¿Qué significa?

¿Cuál es la forma recomendada de añadir CSS a un sitio con varias páginas?

Escribes colour: red;. ¿Qué hace el navegador?

Tu progreso se guarda en este navegador y se refleja en el índice del curso.

💡 🚀 ¡Ahora te toca!

La práctica fija lo aprendido. Pasa al ejercicio de esta lección.

Ir al ejercicio