O que é o Box Model do CSS?
Resposta Completa
O Box Model do CSS descreve como todo elemento HTML é renderizado como uma caixa retangular composta por quatro camadas, de dentro para fora:
- Content (Conteúdo) — o texto, imagem ou outro conteúdo real.
widtheheightse aplicam aqui por padrão. - Padding — espaço transparente entre o conteúdo e a borda. Fica dentro do elemento, então herda a cor de fundo.
- Border (Borda) — uma linha ao redor do padding e conteúdo. Pode ter largura, estilo e cor.
- Margin (Margem) — espaço transparente fora da borda. Margens de elementos adjacentes podem colapsar (margin collapsing).
Box Sizing
Por padrão (box-sizing: content-box), width e height se aplicam apenas à área de conteúdo — padding e border são somados por cima, fazendo o elemento renderizado ser maior do que o especificado.
Com box-sizing: border-box, width e height incluem padding e border. Isso é quase sempre mais intuitivo e é o padrão na maioria dos CSS resets:
*, *::before, *::after {
box-sizing: border-box;
}
Exemplo:
.caixa {
width: 200px;
padding: 20px;
border: 2px solid black;
margin: 10px;
}
/* content-box: largura renderizada = 200 + 40 + 4 = 244px */
/* border-box: largura renderizada = 200px (padding e border cabem dentro) */Resposta Rápida para o Entrevistador
O Box Model são as quatro camadas ao redor de todo elemento: conteúdo, padding, border, margin. Por padrão width define apenas a área de conteúdo; com box-sizing: border-box inclui padding e border — quase sempre preferível.
Flashcard