CSS-ում ֆլեքս բլոկների սեղմման գործոնը

Նախորդ դասում մենք պարզեցինք, որ երբ ֆլեքս տարրերը տեղի պակաս ունենան, նրանք սկսում են սեղմվել: Այն, թե որքանով է ընդհանուր լայնությունը գերազանցում ծնողի լայնությունը, կոչվում է բացասական ազատ տարածություն:

Տեխնիկապես սեղմումը նշանակում է, որ յուրաքանչյուր տարրի լայնությունից մի կտոր է պոկվում այնպես, որ բոլոր տարրերը տեղավորվեն իրենց ծնողի մեջ:

Եկեք կատարենք որոշ հաշվարկներ: Ենթադրենք, օրինակ, մենք ունենք 4 տարր՝ 200px լայնությամբ: Ենթադրենք, որ ծնողի լայնությունը 700px է: Ստացվում է, որ տարրերի ընդհանուր լայնությունը հավասար է.

200px * 4 = 800px

Այս լայնությունը 100px-ով ավելի է ծնողի լայնությունից: Եկեք հաշվարկենք, թե յուրաքանչյուր տարրից որքան պետք է պոկել, որպեսզի տարրերը տեղավորվեն իրենց ծնողի մեջ.

100px / 4 = 25px

Այսինքն՝ տարրերի լայնությունը կլինի.

200px - 25px = 175px
Задание 1

Իրականացրեք նկարագրված բլոկները և ստուգեք չափումներով, որ տարրերի լայնությունը իսկապես հավասար կլինի մեր հաշվարկածին:

Задание 2

Հաշվարկեք բլոկների լայնությունը, ապա ստուգեք հաշվարկները չափումներով.

html<div class="parent">
  <div class="child elem1">1</div>
  <div class="child elem2">2</div>
  <div class="child elem3">3</div>
</div>
css.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;
}