0%
Inicio / css / El modelo de caja

El modelo de caja

25 min
Principiante

Cuatro capas

El navegador trata cada elemento como una caja rectangular, hecha de cuatro capas, de adentro hacia afuera:

  • Content (contenido): el texto, imagen, o lo que sea que tenga adentro.
  • Padding (relleno): espacio entre el contenido y el borde. Empuja el borde hacia afuera, sin mover nada de lo que está fuera de la caja.
  • Border (borde): una línea alrededor del padding y el contenido.
  • Margin (margen): espacio fuera del borde, que separa esta caja de las demás.
.caja {
    width: 300px;
    padding: 20px;
    border: 2px solid black;
    margin: 10px;
}

¿Cuánto mide en total?

Responde estas preguntas para verificar tu comprensión.

Pregunta 1

.caja {
    width: 100px;
    padding: 20px;
    border: 5px solid black;
}
Por defecto en CSS, width solo mide el contenido — el padding y el borde se suman aparte, a cada lado. ¿Cuánto mide de ancho la caja completa (sumando los dos lados)?

box-sizing: border-box

Ese cálculo de la pantalla anterior sorprende a cualquiera al principio — uno esperaría que width: 100px signifique "esta caja mide 100px", punto. La propiedad box-sizing permite justamente eso.

content-box (el valor por defecto)

width mide solo el contenido. Padding y borde se suman aparte — es el comportamiento que viste en la pregunta anterior.

border-box

width incluye contenido, padding y borde. Si decís width: 100px, la caja mide 100px de ancho total, sin importar cuánto padding o borde le agregues.

.caja {
    box-sizing: border-box;
    width: 100px;
    padding: 20px;
    border: 5px solid black;
}
/* Ancho total: 100px, siempre */

Por lo predecible que resulta, es muy común ver box-sizing: border-box aplicado a todos los elementos de una página de una sola vez, con el selector universal:

* {
    box-sizing: border-box;
}

Probá vos: comparar las dos cajas

Hay dos cajas, con el mismo width, padding y border. Dale box-sizing: content-box a la primera y box-sizing: border-box a la segunda, y compará en la vista previa cómo terminan midiendo distinto en la práctica.

Cargando...