CSSда флекс блокларининг қисқариш омили
Олдинги дарсда биз аникладikki, флекс элементларига жой етмаганда, улар қисқара бошлайди. Умумiy эннинг ота-она энидан катта бўлиши салбий эркин майдони деб аталади.
Техник жиҳатдан қисқариш дегани, ҳар бир элемент энидан кичик бўлак ажратиб олиниши, шундай қилиб барча элементлар ота-онасига сиғиши керак.
Келгина, бир қанча ҳисоб-китоб қилайлик. Масалан,
бизда 4 та элемент бор, уларнинг эни
200px. Ота-онанинг эни 700px
бўлсин. Демак, элементларнинг умумий эни:
200px * 4 = 800px
Бу ота-она энидан 100px катта.
Келинг, ҳар бир элементдан қанча миқдорда
ажратиб олиш кераклигини ҳисоблаймиз, элементлар
ота-онасига сиғиши учун:
100px / 4 = 25px
Яъни элементларнинг эни шундай бўлади:
200px - 25px = 175px
Тавсирланган блокларни амалга оширинг ва ўлчаш орқали текширинг, элементларнинг эни ҳақиқатан ҳам биз ҳисоблагандек бўладими.
Блокларнинг энини ҳисобланг, сўнгра ўлчаш орқали текширинг:
<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;
}
.elem2 {
width: 100px;
}
.elem3 {
width: 100px;
}