Definição
By ChatGpt:
CSS Flexbox, ou Flexible Box Layout, é um modelo de layout do CSS que facilita a construção de layouts complexos e responsivos. Ele permite que os itens dentro de um contêiner sejam dispostos de maneira mais eficiente, mesmo quando suas dimensões são desconhecidas ou dinâmicas.
Principais características do Flexbox:
-
Direção: Flexbox permite definir a direção em que os itens são organizados: horizontalmente (linha) ou verticalmente (coluna).
-
Alinhamento: É possível alinhar os itens ao longo do eixo principal e do eixo transversal, permitindo controle sobre o posicionamento e a distribuição de espaço entre eles.
-
Justificação: Você pode justificar os itens (distribuí-los) dentro do contêiner, usando propriedades como
justify-content
para controlar o espaço ao longo do eixo principal. -
Flexibilidade: Os itens podem crescer ou encolher para ocupar o espaço disponível no contêiner, utilizando as propriedades
flex-grow
,flex-shrink
eflex-basis
. -
Ordem: Flexbox permite alterar a ordem visual dos itens sem modificar seu HTML, usando a propriedade
order
. -
Responsividade: Facilita a criação de layouts responsivos que se adaptam a diferentes tamanhos de tela.
Exemplo básico:
.container {
display: flex; /* Ativa o modo flex */
flex-direction: row; /* Organiza os itens em linha */
justify-content: space-between; /* Espaço entre os itens */
align-items: center; /* Alinha os itens verticalmente ao centro */
}
.item {
flex: 1; /* Permite que os itens cresçam igualmente */
}
O Flexbox é uma ferramenta poderosa para designers e desenvolvedores web, pois simplifica o processo de criação de layouts complexos sem a necessidade de usar floats ou posicionamento absoluto.