No capítulo anterior introduzimos o básico de formatação de texto usando propriedades da CSS, mas isso é somente um dos aspectos da estilização de páginas. Definir o layout de uma página web é um troço totalmente diferente. Esse capítulo é sobre isso.
O “Modelo de Caixa CSS” é um conjunto de regras que definem como toda a página será renderizada na Web. A CSS trata cada elemento na HTML como uma “caixa”, com um monte de propriedades diferentes que determinam onde ela aparecerá na tela. Assim, todas as nossas páginas web tem só um monte de elementos renderizados um depois do outro. O modelo de caixa é nossa caixa de ferramentas para customizar esse esquema padrão de apresentação.
Uma grande parte do seu trabalho como desenvolvedor web será aplicar as regras do modelo de caixa CSS para transformar um design modelo em uma página web. Enquanto você trabalha nesse capítulo, você vai se perguntar porque aprender todas essas regras ao invés de só carregar uma imagem estática gigante de uma página web (ex. um modelo) em um servidor web e acabar com o problema?
De fato, isso tornaria nossa vida muito fácil; porém, se não pudermos separar nosso conteúdo dentro da HTML, mecanismos de pesquisa não teriam uma forma de inferir sobre a estrutura da nossa página web, não poderíamos tornar nossa página responsiva, e não teria forma de colocar animações super legais ou interatividade com o JavaScript. Esse é uma grande troca para fazer a CSS valer a pena.
Este capítulo vai cobrir os principais componentes do modelo de caixa CSS: preenchimento (padding), bordas, margens, caixas de bloco, e caixas em linha. Você pode pensar nisso como uma visão “micro” dos layouts CSS, como elas definem o comportamento individual das caixas. Em capítulos futuros, vamos aprender mais sobre como a estrutura HTML e o modelo de caixas CSS combinam para formar todos os tipos complexos de layout de páginas.