204 of 313 menu

Vlastnosť flex-grow

Vlastnosť flex-grow určuje, o koľko môže byť jednotlivý flex blok väčší ako susedné prvky, ak je to potrebné.

Napríklad, ak všetky flex bloky vo flex kontajnery majú flex-grow:1, budú mať rovnakú veľkosť. Ak jeden z nich má flex-grow:2, bude 2 krát väčší ako všetky ostatné.

Ak súhrnná šírka prvkov je menšia ako šírka rodiča, napravo zostáva prázdny priestor. Ak je to žiaduce, tento prázdny priestor je možné proporcionálne rozdeliť medzi naše prvky. To sa robí pomocou vlastnosti flex-grow, ktorá sa nastavuje flex prvkom. Hodnotou tohto vlastnosti je bezrozmerné číslo.

Platí pre: konkrétny flex blok.

Táto vlastnosť vstupuje ako zložková časť do skrátenej vlastnosti flex.

Syntax

selektor { flex-grow: kladné číslo; }

Predvolená hodnota: 0.

Príklad

Teraz máme dva flex bloky so šírkou 100px. Ich súhrnná šírka prvkov je 200px, a šírka rodiča je 300px. To znamená, že zostáva voľný priestor 100px.

Ak prvkom nie je nastavený flex-grow, jednoducho uvidíme tento voľný priestor. Ak je im nastavený, skutočná šírka prvkov bude väčšia ako zadaná - proporcionálne si rozdelia voľný priestor medzi sebou a pridajú ho k svojej šírke.

Napríklad, nech prvý prvok má flex-grow rovný 1, a druhý - 3. Poďme vypočítať, akú časť voľného priestoru získa každý prvok.

Najprv je potrebné získať súhrnný počet jendnotiek flex-grow všetkých našich prvkov. Prvý prvok má hodnotu 1, a druhý - 3. To znamená, že súčet je 4.

Teraz vydeľme 100px voľného priestoru 4 a dostaneme, že 25px pripadá na jednu jednotku flex-grow. To znamená, že k prvému prvku sa pridá jedna jednotka flex-grow, teda 25px, a k druhému - tri jednotky, teda 75px.

Šírka prvého prvku bude 125px, a druhého - 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; }

:

Príklad

Nech je teraz šírka rodiča rovná 400px, šírka prvého prvku 200px, a šírka druhého prvku - 100px. To znamená, že voľný priestor je opäť rovný 100px.

Nastavme každému prvku flex-grow, rovný 1. V súčte dostaneme 2, to znamená, že 100px voľného priestoru je potrebné rozdeliť na 2. To znamená, že 50px pripadá na jednu jendnotku lakomstva.

Pretože všetky prvky majú rovnakú hodnotu flex-grow, ku všetkým prvkom sa pridá rovnaká hodnota 50px. To znamená, že prvý prvok bude mať 250px, a druhý bude mať 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; }

:

Príklad

Nech je opäť šírka rodiča rovná 400px, šírka prvého prvku 200px, a šírka druhého prvku - 100px.

Nastavme teraz prvému prvku flex-grow na hodnotu 3, a druhému - na hodnotu 1. To znamená, že lakomstvo v súčte je 4. Potom jedna jednotka lakomstva je rovná 100px / 4 = 25px.

K prvému prvku sa pridá 75px, a bude mať 275px, a k druhému - 25px, bude mať 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; }

:

Pozri tiež

  • vlastnosť flex-direction,
    ktorá nastavuje smer osí flex blokov
  • vlastnosť justify-content,
    ktorá nastavuje zarovnanie pozdĺž hlavnej osi
  • vlastnosť align-items,
    ktorá nastavuje zarovnanie pozdĺž priečnej osi
  • vlastnosť flex-wrap,
    ktorá nastavuje viacriadkovosť flex blokov
  • vlastnosť flex-flow,
    skratka pre flex-direction a flex-wrap
  • vlastnosť order,
    ktorá nastavuje poradie flex blokov
  • vlastnosť align-self,
    ktorá nastavuje zarovnanie jedného bloku
  • vlastnosť flex-basis,
    ktorá nastavuje veľkosť konkrétneho flex bloku
  • vlastnosť flex-shrink,
    ktorá nastavuje stlačiteľnosť flex blokov
  • vlastnosť flex,
    skratka pre flex-grow, flex-shrink a flex-basis
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť