⊗mkSpFxSFC 96 of 128 menu

CSS да флекс блокларни сикишни тартибга солиш

Стандарт бўйича барча элементлардан элементнинг энига нисбатан бўлган катталикдаги кисимлар ажратиб олинади. Аммо, баъзи элементлардан катта ёки кичикрок кисимлар ажратиб олиш имкони мавжуд. Бунинг учун flex-shrink maxsus хусусияти мавжуд.

Бу хусусият маълум бир огирликни ифодалайди, у элементнинг эни ҳисобланаётганда юкорида келтирилган формула бўйича ажратиб олинаётган кисимни кўпайтириш учун ишлатилади. Мисол учун, агар элементнинг эни 200px, ва унинг flex-shrink 3 га тенг бўлса, у ҳолда огирлаштирилган (яъни огирликка кўпайтирилган) элемент эни куйидагича бўлади:

200px * 3 = 600px

flex-shrink ни ҳисобга олган ҳолдаги формула куйидаги кўринишда бўлади: ман. бўш жой * (огирлаштирилган элемент эни / барча огирлаштирилган элементлар энининг йиғиндиси).

Келинг мисолда кўрамиз. Фарз қилайлик, бизда 4 та элемент бор. Биринчи элементнинг эни 400px, flex-shrink эса 2 га тенг, қолган элементларнинг эни - 200px, уларнинг flex-shrink эса 1 га тенг. Ота-онанинг эни 900px деб фарз қилайлик.

Элементларнинг умумий эни:

400px + 3 * 200px = 1000px

Манфий бўш жой:

1000px - 900px = 100px

Элементларнинг умумий огирлаштирилган эни:

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

Биринчи элементнинг огирлаштирилган эни:

400px * 2 = 800px

Биринчи элементдан куйидаги кисим ажратиб олинади:

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

Элементнинг эни:

400px - 57.14px = 342.86px ~ 343px

Қолган ҳар бир элементнинг огирлаштирилган эни куйидагича:

200px * 1 = 200px

Ҳар бир элементдан куйидаги кисим ажратиб олинади:

100px * (200px / 1400px) = 100px * 0.142 = 14.2px

Элементнинг эни:

200px - 14.2px = 185.8px ~ 186px

Тавсифланган блокларни амалга оширинг ва ўлчаб, элементлар эни ҳақиқатан ҳам биз ҳисоблагандек эканини текширинг.

Блоклар энини ҳисобланг, сўнгра ҳисобларни ўлчаб текширинг:

<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; }

Блоклар энини ҳисобланг, сўнгра ҳисобларни ўлчаб текширинг:

<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; }

Блоклар энини ҳисобланг, сўнгра ҳисобларни ўлчаб текширинг:

<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; }
Ўзбек
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш