Junior
CSSda flex nima uchun ishlatiladi?
sobes.tech AI
AIdan javob
Flexbox, elementlarni bitta o‘lchovli tartibda joylashtirish uchun ishlatiladi. U joylashishni, bo‘shliq taqsimotini va elementlarning tartibini boshqarishga imkon beradi.
Asosiy tushunchalar:
- Flex konteyner:
display: flexyokidisplay: inline-flexbilan belgilangan ota-elemnt. - Flex elementlar: Flex konteynerning bolalar elementlari.
- Asosiy o‘q: Flex konteynerning asosiy o‘qi.
flex-directionxususiyati bilan belgilangan. Standartda gorizontal (row). - Kross o‘q: Asosiy o‘qqa perpendikulyar o‘q.
Flex konteyner uchun asosiy xususiyatlar:
display: Element flex konteyner ekanligini belgilaydi (flexyokiinline-flex).flex-direction: Asosiy o‘q yo‘nalishini belgilaydi (row,row-reverse,column,column-reverse).justify-content: Flex elementlarni asosiy o‘q bo‘ylab joylashtiradi (flex-start,flex-end,center,space-between,space-around,space-evenly).align-items: Flex elementlarni kross o‘q bo‘ylab joylashtiradi (flex-start,flex-end,center,baseline,stretch).flex-wrap: Bo‘sh joy yetishmasa, flex elementlar yangi satr yoki ustunlarga o‘tadimi yoki yo‘qmi (nowrap,wrap,wrap-reverse).
Flex elementlar uchun asosiy xususiyatlar:
order: Flex elementning vizual tartibini belgilaydi (standart 0).flex-grow: Flex element boshqa elementlarga nisbatan qancha o‘sishi mumkinligini belgilaydi (standart 0).flex-shrink: Flex element boshqa elementlarga nisbatan qancha kamayishi mumkinligini belgilaydi (standart 1).flex-basis: Bo‘sh joy taqsimlanishidan oldin flex elementning boshlang‘ich o‘lchamini belgilaydi (standart auto).align-self: Maxsus element uchun kross o‘q bo‘ylab joylashishni qayta belgilaydi.
Misol:
.container {
display: flex;
justify-content: center; /* Asosiy o‘q bo‘ylab markazlashtirish */
align-items: center; /* Kross o‘q bo‘ylab markazlashtirish */
height: 200px;
border: 1px solid black;
}
.item {
width: 50px;
height: 50px;
background-color: lightblue;
margin: 5px;
}
<div class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
Bu elementlarni osongina markazlashtirish, moslashuvchan tarmoqlar yaratish va elementlar o‘rtasidagi bo‘shliqni boshqarish imkonini beradi.