⊗mkSpFxFTP 100 of 128 menu

Problemas de layout de blocos com flexbox em CSS

O primeiro problema do layout de blocos é bastante óbvio desde o início - é muito inconveniente o fato de o elemento pai precisar ter sua altura definida explicitamente. Afinal, é perfeitamente possível que o número de blocos mude dinamicamente e sua quantidade seja às vezes menor, às vezes maior que 9.

Já o segundo problema surgirá se a quantidade de blocos for tal que a última linha tenha um número insuficiente de blocos. Nesse caso, a última linha ficará com uma aparência terrível:

<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> .parent { display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; width: 320px; border: 1px solid red; } .child { box-sizing: border-box; width: 100px; height: 100px; border: 1px solid green; }

:

Assim, percebe-se que mesmo na horizontal, o valor space-between não funciona bem no nosso caso.

Resumindo: se a quantidade de seus elementos filhos for sempre constante e couber adequadamente no elemento pai, então o layout de blocos usando space-between é algo bastante conveniente. Caso contrário, será preciso pensar em outra solução.

Dados 12 elementos. Crie um layout de blocos com 4 elementos por linha, com a largura de cada elemento de 100px e a distância entre eles de 20px.

Dados 12 elementos. Crie um layout de blocos com 3 elementos por linha, com a largura de cada elemento de 150px e a distância entre eles de 10px.

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