Junior
Flexbox деген эмне?
sobes.tech AI
AIден жооп
Flexbox (Илгий кутуча түзүү) — бул CSS модулу, ал кыйын жана адаптивдүү түзүмдөрдү түзүү үчүн арналган. Ал контейнердеги элементтердин жайгашуусун, тууралашын жана кеңейтүүнү башкарууга мүмкүндүк берет, алардын өлчөмдөрү белгисиз же динамикалык болсо да.
Flexboxтин негизги концепциялары:
- Негизги ось (main axis): Элементтер жайгашкан ось. Аны по умолчанию горизонталдуу (солдон оңго).
- Көбүрөөк ось (cross axis): Негизги оськө перпендикуляр ось. Аны по умолчанию вертикалдуу (жогорудан төмөнгө).
- Контейнер (flex container):
display: flexжеdisplay: inline-flexколдонулган элемент. - Элементтер (flex items): Контейнердин балдары.
Flex-контейнер үчүн өзгөчөлүктөр:
display:flexжеinline-flexflex-direction: Негизги осьдүн багыты (row, row-reverse, column, column-reverse)flex-wrap: Элементтер жаңы сапка өтөбү же жокпу (nowrap, wrap, wrap-reverse)justify-content: Негизги ось боюнча элементтерди тууралоо (flex-start, flex-end, center, space-between, space-around, space-evenly)align-items: Көбүрөөк ось боюнча элементтерди тууралоо (flex-start, flex-end, center, baseline, stretch)align-content: Көп саптуу контейнерде саптар же колонналардын туураланышы (flex-start, flex-end, center, space-between, space-around, stretch)
Flex-элементтер үчүн өзгөчөлүктөр:
order: Элементтин тартибиflex-grow: Элементтин кеңейүү коэффициентиflex-shrink: Элементтин кысуу коэффициентиflex-basis: Баштапкы өлчөмflex:flex-grow,flex-shrinkжанаflex-basisкыскача жазылышыalign-self: Элементтин өзүнчө туураланышы (flex-start, flex-end, center, baseline, stretch, auto)
Колдонуу мисалы:
/* Контейнер */
.container {
display: flex; /* Flexbox колдонуу */
flex-direction: row; /* Элементтер сапта жайгашат */
justify-content: center; /* Горизонталдуу борборлоо */
align-items: center; /* Вертикалдуу борборлоо */
height: 200px; /* Контейнердин бийиктиги */
border: 1px solid black;
}
/* Элементтер */
.item {
width: 50px;
height: 50px;
background-color: lightblue;
margin: 5px;
}
Flexbox адаптивдүү түзүмдөрдү түзүүдө классикалык ыкмаларга салыштырмалуу кыйла жеңилдик берет (float, inline-block, table).