Flexbox em CSS & HTML (Tutorial) - desenvolver layouts responsivos

Posicionamento flexível: Organizar efetivamente os elementos filhos

Todos os vídeos do tutorial Flexbox em CSS & HTML (Tutorial) - desenvolvendo layouts responsivos

Neste exercício, você vai se aprofundar nas propriedades de caixa flexível do CSS, especialmente na distribuição de espaço entre elementos filhos dentro de um contêiner flexível. Aqui, você aprenderá como ajustar o valor de flex para fazer com que certos elementos ocupem mais espaço do que outros. Essa abordagem requer um pouco de matemática, mas não se preocupe - é mais fácil do que parece!

Vamos passar por um exemplo simples juntos que mostrará como você pode efetivamente projetar o layout dos seus elementos ao ajustar as propriedades de flexibilidade.

Principais conclusões

  • A caixa flexível permite um arranjo flexível e adaptável de elementos.
  • O valor de flex é crucial para a distribuição de espaço entre os elementos filhos.
  • Ajustando os valores corretamente, você pode tornar certos elementos mais proeminentes.

Guia passo a passo

Primeiro, vamos examinar o layout existente e preparar tudo para o exercício.

Você tem um contêiner que já foi configurado com display: flex. Vamos definir a largura do contêiner como 400 pixels e a altura como 200 pixels. Isso permitirá que você visualize os elementos de forma clara.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

No contêiner, temos cinco elementos div, cada um com a classe Box atribuída. Cada um desses elementos div tem uma contorno para mostrar as margens e uma cor de fundo que é white smoke.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

O objetivo é que o div do meio, ou seja, aquele com a classe L3, ocupe metade do espaço no contêiner. Isso equivale a 200 pixels. Os outros quatro elementos div devem então compartilhar igualmente os 200 pixels restantes.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

Isso significa que cada um desses quatro elementos div receberá então 50 pixels (200 pixels divididos por 4). Você precisará ajustar os valores de flexibilidade de acordo para que o terceiro elemento receba mais espaço.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

Agora é hora de ajustar as propriedades de flexibilidade. Primeiramente, defina o valor de flex para todos os elementos filhos exceto o do meio como 1. No entanto, o elemento do meio receberá um valor de flex que permitirá a ele ocupar mais espaço. Neste caso, você usará o valor 4.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

Após definir os valores, salve as alterações e verifique o resultado. Nos devtools do seu navegador, você poderá verificar se o layout está conforme o desejado.

O div do meio deverá ter agora uma largura de 200 pixels, enquanto os outros quatro elementos div terão cada um 50 pixels de largura. Ao calcular os valores de flexibilidade, é importante manter a soma dos valores de flexibilidade igual.

Significa que, se adicionar os valores de flexibilidade dos Elementos 1, 2, 4 e 5 (ou seja, 1 + 1 + 1 + 1), chegará a 4. O elemento do meio tem um valor de flexibilidade de 4, totalizando 8.

Colocação Flexbox: Organizar os elementos filhos de forma eficaz

Para entender quanto espaço está sendo atribuído a cada elemento, você pode utilizar a largura total do contêiner (400 pixels). Dividindo por 8 para as unidades de flexibilidade, você terá que 1 unidade de flexibilidade corresponde a 50 pixels. Ao dividir 400 pixels por 8, terá 50 pixels para os outros quatro elementos e 200 pixels para o elemento do meio.

Isso significa que você pode controlar perfeitamente o layout ajustando os valores de flexibilidade. Isso resulta em um design equilibrado que é tanto adaptável quanto organizado.

Resumo

Neste exercício, você aprendeu como definir as propriedades de caixa flexível para usar eficientemente o espaço pelos elementos no contêiner. Compreendendo os valores de flexibilidade e sua aplicação matemática, você pode determinar com precisão quanto espaço cada elemento deve ocupar. Com esse método, você está bem preparado para criar layouts mais complexos.

Perguntas Frequentes

Como definir o valor de flexibilidade para um elemento filho?Você pode definir o valor de flexibilidade com a propriedade CSS flex no seu arquivo de estilos.

Por que a soma dos valores de flexibilidade é importante?A soma determina a distribuição proporcional do espaço entre os elementos.

Posso usar valores de flexibilidade diferentes?Sim, você pode atribuir um valor de flexibilidade individual a cada elemento para controlar o layout.