⊗mkSpFxSFC 96 of 128 menu

Regulering van Vleksblok-Kompressie in CSS

Standaard word daar stukkies van alle elemente afgeknip, proporsioneel tot die breedte van die element. Dit is egter moontlik om te maak dat sommige elemente groter of kleiner stukkies laat afknip. Vir hierdie doel is daar 'n spesiale eienskap flex-shrink.

Hierdie eienskap verteenwoordig 'n sekere gewig waarmee die element se breedte vermenigvuldig sal word by die berekening van die afgeknipte stukkie volgens die bostaande formule. Byvoorbeeld, as die breedte van die element gelyk is aan 200px, en sy flex-shrink gelyk is aan 3, dan sal die geweegde (d.w.s. vermenigvuldig met die gewig) breedte van die element gelyk wees aan:

200px * 3 = 600px

Die formule met inagneming van flex-shrink sal die volgende vorm hê: neg. vrye ruimte * (geweegde breedte van element / som van alle geweegde breedtes van elemente).

Kom ons kyk na 'n voorbeeld. Laat ons aanneem daar is 4 elemente. Laat die breedte van die eerste element gelyk wees aan 400px, en sy flex-shrink gelyk aan 2, die breedte van die res van die elemente - 200px, en hul flex-shrink gelyk aan 1. Laat die ouer se breedte 900px wees.

Die totale breedte van die elemente is gelyk aan:

400px + 3 * 200px = 1000px

Die negatiewe vrye ruimte sal gelyk wees aan:

1000px - 900px = 100px

Die totale geweegde breedte van die elemente is gelyk aan:

400px * 2 + 200px * 1 + 200px * 1 + 200px * 1 = 1400px

Die geweegde breedte van die eerste element is gelyk aan:

400px * 2 = 800px

Die volgende stukkie sal van die eerste element afgeknip word:

100px * (800px / 1400px) = 100px * 0.57 = 57.14px

Die breedte van die element sal gelyk wees aan:

400px - 57.14px = 342.86px ~ 343px

Die geweegde breedte van elk van die ander elemente is gelyk aan:

200px * 1 = 200px

Die volgende stukkie sal van elke element afgeknip word:

100px * (200px / 1400px) = 100px * 0.1428 = 14.28px ~ 14.3px

Die breedte van elke element sal gelyk wees aan:

200px - 14.3px = 185.7px ~ 186px

Implementeer die beskryfde blokke en bevestig deur meting dat die breedte van die elemente inderdaad gelyk is aan wat ons bereken het.

Bereken die breedte van die blokke, en kontroleer dan die berekeninge deur meting:

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

Bereken die breedte van die blokke, en kontroleer dan die berekeninge deur meting:

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

Bereken die breedte van die blokke, en kontroleer dan die berekeninge deur meting:

<div class="parent"> <div class="child elem1">1</div> <div class="child elem2">2</div> <div class="child elem3">3</div> <div class="child elem4">4</div> </div> .parent { display: flex; width: 500px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 300px; flex-shrink: 3; } .elem2 { width: 200px; flex-shrink: 2; } .elem3 { width: 200px; flex-shrink: 1; } .elem4 { width: 200px; flex-shrink: 1; }
Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp