205 of 313 menu

Proprietà flex-shrink

La proprietà flex-shrink determina quanto un blocco flex si ridurrà rispetto agli elementi adiacenti all'interno del contenitore flex in caso di mancanza di spazio libero.

Ad esempio, se tutti i blocchi flex all'interno del contenitore flex hanno flex-shrink:1, allora avranno la stessa dimensione. Se uno di essi ha flex-shrink:2, sarà 2 volte più piccolo di tutti gli altri.

Si applica a: un singolo blocco flex.

Questa proprietà è inclusa come parte della proprietà shorthand flex.

Sintassi

selettore { flex-shrink: numero positivo; }

Valore predefinito: 1.

Esempio

Supponiamo di avere 3 elementi. La larghezza di ciascuno di essi è 200px e complessivamente è 600px, che è maggiore della larghezza del contenitore genitore, che è 350px:

<div class="parent"> <div class="child elem1">1</div> <div class="child elem2">2</div> <div class="child elem2">3</div> </div> .parent { display: flex; width: 350px; height: 200px; border: 1px solid red; } .child { width: 200px; height: 50px; border: 1px solid green; } .elem1 { flex-shrink: 1; } .elem2 { flex-shrink: 2; } .elem3 { flex-shrink: 3; }

:

Calcoliamo lo spazio libero negativo con la formula:

600px - 350px = 250px

La larghezza ponderata totale degli elementi tenendo conto dei valori della proprietà flex-shrink per ciascun elemento sarà:

200px * 1 + 200px * 2 + 200px * 3 = 1200px

Ora determiniamo quanto si ridurrà il primo elemento:

250px * 1 (flex-shrink) * 200 (width) / 1200 = 41,6px

Il secondo elemento:

250px * 2 (flex-shrink) * 200 (width) / 1200 = 83,3px

Il terzo elemento:

250px * 3 (flex-shrink) * 200 (width) / 1200 = 125px

Risulta che il terzo elemento, il cui valore flex-shrink è 3, si ridurrà più degli altri elementi.

Vedi anche

  • la proprietà flex-direction,
    che imposta la direzione degli assi dei blocchi flex
  • la proprietà justify-content,
    che imposta l'allineamento lungo l'asse principale
  • la proprietà align-items,
    che imposta l'allineamento lungo l'asse trasversale
  • la proprietà flex-wrap,
    che imposta la multilinea dei blocchi flex
  • la proprietà flex-flow,
    shorthand per flex-direction e flex-wrap
  • la proprietà order,
    che imposta l'ordine dei blocchi flex
  • la proprietà align-self,
    che imposta l'allineamento di un singolo blocco
  • la proprietà flex-basis,
    che imposta la dimensione di un specifico blocco flex
  • la proprietà flex-grow,
    che imposta l'"ingordigia" dei blocchi flex
  • la proprietà flex,
    shorthand per flex-grow, flex-shrink e flex-basis
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