204 of 313 menu

Egenskapen flex-grow

Egenskapen flex-grow definerer hvor mye en enkelt flex-blokk kan være større enn nabo-elementene, hvis det er nødvendig.

For eksempel, hvis alle flex-blokker inne i en flex-container har flex-grow:1, vil de ha samme størrelse. Hvis en av dem har flex-grow:2, vil den være 2 ganger større enn alle de andre.

Hvis den totale bredden på elementene er mindre enn bredden til forelderen, blir det ledig plass til høyre. Ønsker man det, kan denne ledige plassen fordeles proporsjonalt mellom elementene våre. Dette gjøres ved hjelp av egenskapen flex-grow, som settes på flex-elementene. Verdien til denne egenskapen er et dimensjonsløst tall.

Gjelder for: en spesifikk flex-blokk.

Denne egenskapen inngår som en del av sammenskrevet egenskap flex.

Syntaks

velger { flex-grow: positivt tall; }

Standardverdi: 0.

Eksempel

Nå har vi to flex-blokker med bredde på 100px. Deres totale bredde er 200px, mens bredden til forelderen er 300px. Det betyr at det er ledig plass på 100px.

Hvis elementene ikke har satt flex-grow, vil vi bare se denne ledige plassen. Hvis den derimot er satt, vil den faktiske bredden på elementene være større enn den angitte - de vil proporsjonalt dele den ledige plassen mellom seg og legge den til sin bredde.

La for eksempel det første elementet ha flex-grow satt til 1, og det andre til 3. La oss regne ut hvor mye av den ledige plassen hvert element vil få.

Først må vi få den totale mengden av flex-grow-enheter for alle elementene våre. Det første elementet har 1, og det andre har 3. Det betyr at summen er 4.

La oss nå dele 100px ledig plass på 4 og få at 25px kommer på en flex-grow-enhet. Det vil si at det første elementet vil få én enhet av flex-grow, det vil si 25px, mens det andre vil få tre enheter, det vil si 75px.

Bredden på det første elementet blir 125px, og det andre blir 175px:

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

:

Eksempel

La oss nå si at bredden til forelderen er 400px, bredden til det første elementet er 200px, og bredden til det andre elementet er 100px. Det vil si at den ledige plassen igjen er 100px.

La oss sette flex-grow for hvert element til 1. Summen blir 2, det vil si at 100px ledig plass må deles på 2. Det vil si at 50px kommer på en grådighetsenhet.

Siden alle elementene har samme verdi for flex-grow, vil alle elementene få samme tilleggsverdi på 50px. Det betyr at det første elementet blir 250px, og det andre blir 150px:

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

:

Eksempel

La oss igjen si at bredden til forelderen er 400px, bredden til det første elementet er 200px, og bredden til det andre elementet er 100px.

La oss nå sette flex-grow for det første elementet til verdien 3, og for det andre til verdien 1. Da blir grådigheten til sammen 4. Da blir én enhet grådighet lik 100px / 4 = 25px.

Det første elementet vil få 75px lagt til, og det blir 275px, mens det andre - får 25px lagt til, og det blir 125px:

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

:

Se også

  • egenskapen flex-direction,
    som angir retningen på flex-blokkenes akser
  • egenskapen justify-content,
    som angir justering langs hovedaksen
  • egenskapen align-items,
    som angir justering langs kryssaksen
  • egenskapen flex-wrap,
    som angir flerlinjethet for flex-blokker
  • egenskapen flex-flow,
    sammenskrevet for flex-direction og flex-wrap
  • egenskapen order,
    som angir rekkefølgen til flex-blokker
  • egenskapen align-self,
    som angir justering av en enkelt blokk
  • egenskapen flex-basis,
    som angir størrelsen på en spesifikk flex-blokk
  • egenskapen flex-shrink,
    som angir komprimerbarheten til flex-blokker
  • egenskapen flex,
    sammenskrevet for flex-grow, flex-shrink og flex-basis
Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis