⊗mkSpFxZG 87 of 128 menu

Flex elements nulgrådighed i CSS

Hvis flex-grow er nul for et element, så vil dette element ikke deltage i fordelingen af ledig plads. Som standard er grådigheden netop nul, og derfor deler elementer uden tildelt flex-grow ikke den ledige plads imellem sig.

Lad os som eksempel lave en beregning. Antag, at vi har tre flex-elementer, hver med en bredde på 100px. Lad det første element ikke have flex-grow (eller at det er 0), det andet element har flex-grow, som er 2, og det tredje - 3.

Antag, at forælderens bredde er 500px. Så vil den ledige plads være 200px, og pr. flex-grow enhed vil der være 200px / 5 = 40px. Resultatet bliver, at bredden af det første element forbliver 100px, da det ikke deltager i fordelingen, bredden af det andet vil være 100px + 2 * 40px = 180px, og bredden af det tredje - 100px + 3 * 40px = 220px.

Praktiske opgaver

I alle opgaver nedenfor vil du blive præsenteret for noget kode med flex-elementer, der har bredde og flex-grow. Ud fra den præsenterede kode skal du beregne, hvilke størrelser hvert af elementerne vil have. Kør derefter koden og kontroller dine beregninger ved at måle de faktiske bredder af elementerne.

<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: 500px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 200px; flex-grow: 0; } .elem2 { width: 100px; flex-grow: 1; } .elem3 { width: 100px; flex-grow: 1; }
<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: 900px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 300px; flex-grow: 0; } .elem2 { width: 200px; flex-grow: 3; } .elem3 { width: 100px; flex-grow: 2; }
<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: 700px; height: 200px; border: 1px solid red; } .child { height: 50px; border: 1px solid green; } .elem1 { width: 200px; flex-grow: 0; } .elem2 { width: 200px; flex-grow: 0; } .elem3 { width: 100px; flex-grow: 1; } .elem4 { width: 100px; flex-grow: 1; }
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικά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
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis