205 of 313 menu

Propriété flex-shrink

La propriété flex-shrink détermine à quel point un bloc flex sera réduit par rapport aux éléments voisins à l'intérieur du conteneur flex en cas de manque d'espace libre.

Par exemple, si tous les blocs flex à l'intérieur d'un conteneur flex ont flex-shrink:1, ils auront la même taille. Si l'un d'eux a flex-shrink:2, il sera 2 fois plus petit que tous les autres.

S'applique à : un bloc flex spécifique.

Cette propriété fait partie intégrante de la propriété raccourcie flex.

Syntaxe

sélecteur { flex-shrink: nombre positif; }

Valeur par défaut : 1.

Exemple

Supposons que nous ayons 3 éléments. La largeur de chacun d'eux est de 200px et leur total est de 600px, ce qui est supérieur à la largeur du conteneur parent, qui est de 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; }

:

Calculons l'espace libre négatif avec la formule :

600px - 350px = 250px

La largeur pondérée totale des éléments en tenant compte des valeurs de la propriété flex-shrink pour chaque élément sera de :

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

Déterminons maintenant de combien sera réduit le premier élément :

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

Le deuxième élément :

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

Le troisième élément :

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

Il en ressort que le troisième élément, dont la valeur flex-shrink est 3, sera réduit davantage que les autres éléments.

Voir aussi

  • la propriété flex-direction,
    qui définit la direction des axes des blocs flex
  • la propriété justify-content,
    qui définit l'alignement le long de l'axe principal
  • la propriété align-items,
    qui définit l'alignement le long de l'axe transversal
  • la propriété flex-wrap,
    qui définit le retour à la ligne des blocs flex
  • la propriété flex-flow,
    raccourci pour flex-direction et flex-wrap
  • la propriété order,
    qui définit l'ordre des blocs flex
  • la propriété align-self,
    qui définit l'alignement d'un seul bloc
  • la propriété flex-basis,
    qui définit la taille d'un bloc flex spécifique
  • la propriété flex-grow,
    qui définit l'expansion des blocs flex
  • la propriété flex,
    raccourci pour flex-grow, flex-shrink et flex-basis
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser