O Tailwind CSS oferece suporte completo ao Flexbox através de classes utilitárias simples e poderosas. O sistema flex permite organizar elementos em linha ou coluna, controlar alinhamento, distribuição e comportamento responsivo com precisão.
Essa abordagem é ideal para criar layouts modulares e adaptáveis sem escrever CSS manual.
Ativando o Flex
Para iniciar o uso de Flexbox, adicione a classe flex ao elemento pai. Os filhos serão posicionados conforme a direção e regras definidas.
<div class="flex">
<div class="bg-blue-200 p-4">Item 1</div>
<div class="bg-blue-300 p-4">Item 2</div>
</div>
Direção (flex-row, flex-col)
Define se os elementos filhos ficarão lado a lado (linha) ou empilhados (coluna).
<!-- Horizontal (padrão) -->
<div class="flex flex-row gap-4">
<div class="bg-gray-200 p-4">A</div>
<div class="bg-gray-300 p-4">B</div>
</div>
<!-- Vertical -->
<div class="flex flex-col gap-4 mt-6">
<div class="bg-gray-200 p-4">A</div>
<div class="bg-gray-300 p-4">B</div>
</div>
Alinhamento de itens
Alinhamento no eixo principal (justify-*)
Controla a distribuição dos elementos:
-
justify-start -
justify-center -
justify-between -
justify-around -
justify-end
<div class="flex justify-between">
<span>Esquerda</span>
<span>Centro</span>
<span>Direita</span>
</div>
Alinhamento no eixo cruzado (items-*)
Controla o alinhamento vertical (em uma flex-row) ou horizontal (em uma flex-col):
-
items-start -
items-center -
items-end -
items-stretch -
items-baseline
<div class="flex items-center h-32">
<div class="bg-green-200 p-2">Item</div>
</div>
Controle de crescimento (flex-*)
-
flex-none: não cresce nem encolhe -
flex-1: ocupa o máximo de espaço disponível -
flex-auto: cresce conforme o conteúdo permite
<div class="flex gap-4">
<div class="flex-1 bg-red-200 p-4">Flex 1</div>
<div class="flex-none bg-red-300 p-4 w-32">Fixado</div>
</div>
Envelopamento (flex-wrap)
Permite que os itens quebrem para a próxima linha quando o espaço for insuficiente:
<div class="flex flex-wrap gap-2">
<span class="bg-blue-100 p-2">Tag 1</span>
<span class="bg-blue-100 p-2">Tag 2</span>
<span class="bg-blue-100 p-2">Tag 3</span>
<span class="bg-blue-100 p-2">Tag 4</span>
</div>
Aplicação com responsividade
<div class="flex flex-col md:flex-row gap-6">
<div class="flex-1 bg-gray-100 p-4">Conteúdo A</div>
<div class="flex-1 bg-gray-200 p-4">Conteúdo B</div>
</div>
Neste exemplo:
-
No mobile: os itens ficam empilhados (
flex-col) -
A partir de
md: ficam lado a lado (flex-row)
O sistema de Flexbox do Tailwind é ideal para construir seções, agrupamentos e estruturas reativas com pouco esforço.