⊗mkSpFxFTP 100 of 128 menu

Problemi dei layout a griglia con i flex in CSS

Il primo problema del layout a griglia in realtà è abbastanza ovvio subito - è molto scomodo il fatto che il genitore debba avere un'altezza impostata esplicitamente. Dopotutto, potrebbe benissimo succedere che il numero di blocchi cambi dynamicamente e la loro quantità a volte sia inferiore, a volte superiore a 9.

Il secondo problema, invece, si presenterà se il numero di blocchi è tale che nell'ultima riga ci sarà un numero insufficiente di blocchi. In questo caso l'ultima riga apparirà orribile:

<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; }

:

Risulta che anche orizzontalmente il valore space-between funziona male nel nostro caso.

In sintesi: se il numero dei vostri elementi figli è sempre costante e si adatta bene al genitore, allora il layout a griglia con space-between è una cosa abbastanza comoda. Altrimenti bisognerà inventare qualcos'altro.

Sono dati 12 elementi. Create un layout a griglia di 4 elementi per riga con una larghezza di ciascun elemento di 100px e una distanza tra di loro di 20px.

Sono dati 12 elementi. Create un layout a griglia di 3 elementi per riga con una larghezza di ciascun elemento di 150px e una distanza tra di loro di 10px.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta