O modo de layout "Caixa Flexível" ou "Flexbox" oferece uma alternativa aos Floats para definir a aparência geral de uma página web. Uma vez que floats só nos permite modificar o posicionamento horizontal das nossas caixas, flexbox nos dá um controle total sobre o alinhamento, direção, ordem e tamanho das nossas caixas.
A web está passando por uma grande mudança, então uma pequena discussão sobre o status do mercado é necessário. Nos últimos anos, floats era a opção mais usada para desenvolver a aparência de uma página web complexa. Como resultado, esses layouts tinham bom suporte até menos em navegadores antigos, e os desenvolvedores tem usado para construir milhões de páginas web. Isso significa, que inevitavelmente você irá se deparar com floats em algum momento da sua carreira de desenvolvedor web (por isso que o capítulo anterior não foi um completo desperdício).
No entanto, floats tinham originalmente a intenção de serem utilizados nos layouts estilo revista que nós cobrimos na seção Conteúdos flutuantes. Apesar do que vimos no último capítulo, os tipos de layouts que você pode criar com floats são atualmente meio limitados. Até mesmo um simples layout com uma barra lateral é, tecnicamente falando, um pequeno hack. Flexbox foi inventado para acabar com essas limitações.
Nós finalmente alcançamos um ponto onde o suporte dos navegadores atingiu um massa crítica e os desenvolvedores podem começar a construir páginas web completas com flexbox. Nossa recomendação é de usar o flexbox para projetar suas páginas web tanto quanto for possível, reservando floats par quando você precisar do texto fluindo ao redor de uma caixa (ex. um layout estilo revista) ou quando você precisar de suporte nos navegadores antigos.
Neste capítulo, nós vamos explorar todo o modelo de layout flexbox passo a passo. Você se sentirá confortável para construir virtualmente qualquer layout que um web designer poderia oferecer.