⊗mkSpFxFT 99 of 128 menu

Layout de blocos com flexbox em CSS

Vamos agora aprender a criar um layout de blocos usando flexbox. Primeiro, vamos dispor os blocos flexíveis em várias linhas, com três blocos por linha.

Para isso, vamos definir a largura do contêiner pai como 300px e flex-wrap com o valor wrap, e a largura dos filhos como 100px:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> <div class="child">9</div> </div> .parent { display: flex; flex-wrap: wrap; width: 300px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; border: 1px solid green; }

:

Agora vamos criar um espaçamento entre os nossos blocos na horizontal. Para isso, vamos aumentar a largura do contêiner pai para dar espaço extra para as margens.

Como temos três blocos por linha, isso significa que há dois intervalos entre eles. Digamos que queremos que cada intervalo tenha uma largura de 10px. Isso significa que a largura do pai precisa ser aumentada em 20px, ou seja, deve ser 320px em vez de 300px.

Agora vamos definir justify-content no contêiner pai como space-between para obter o espaçamento desejado entre os blocos:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> <div class="child">9</div> </div> .parent { display: flex; flex-wrap: wrap; justify-content: space-between; width: 320px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; border: 1px solid green; }

:

Agora vamos adicionar o mesmo espaçamento entre os blocos na vertical. Para isso, podemos definir a propriedade align-content com o valor space-between.

No entanto, para isso é necessário definir uma altura para o contêiner pai, caso contrário, align-content não funcionará. Vamos definir a altura como 320px. Neste caso, caberão exatamente três linhas de blocos com 100px de altura mais dois intervalos entre as linhas de 10px.

Vamos executar:

<div class="parent"> <div class="child">1</div> <div class="child">2</div> <div class="child">3</div> <div class="child">4</div> <div class="child">5</div> <div class="child">6</div> <div class="child">7</div> <div class="child">8</div> <div class="child">9</div> </div> .parent { display: flex; flex-direction: row; justify-content: space-between; align-content: space-between; flex-wrap: wrap; width: 320px; height: 320px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; border: 1px solid green; }

:

Tudo funciona perfeitamente, mas existem alguns problemas que veremos na próxima lição.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar