A CSS Box Model meghatározza, hogyan épül fel egy HTML elem a böngészőben. Minden elem egy dobozként (box) viselkedik, amely négy rétegből áll: tartalom (content), belső margó (padding), szegély (border) és külső margó (margin).
Amikor egy HTML elemet formázunk, a következő rétegekkel dolgozunk:
A box-sizing
tulajdonság meghatározza, hogyan számítódik ki egy elem teljes szélessége:
Szélesség: 200px
Szélesség: 200px
Ha két elem egymás után következik, a függőleges margóik "összeolvadnak". Ilyenkor a nagyobb margó érvényesül a két érték közül. Ez csak függőleges irányban történik meg!
A két doboz közötti tényleges távolság: 30px (nem 50px!)
A margók negatív értékeket is felvehetnek, ami az elemet a megadott irányba "húzza". Ezt gyakran használják speciális elrendezések létrehozására.