
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
Давайте попробуем понять это на практике.
Предположим, что у нас есть родительский контейнер, внутри которого находятся 4 дочерних контейнера (элемента) с метками. Весь макет выглядит так, как показано на рисунке ниже:
Мы используем display: flex, чтобы установить свойство flex для нашего контейнера.
.container {
display: flex;
}
По умолчанию flex позиционирует наши элементы по оси alig.
Мы можем изменить направление главной оси с помощью свойства flex-direction
.container {
display: flex;
flex-direction: column;
}
→ justify-content:
Выравнивает ось.
.container {
display: flex;
/* flex-direction: row; */
justify-content: flex-end;
}
Имеет следующие значения:






→ Для размещения элементов вдоль поперечной оси мы используем функцию align-items
.container {
display: flex;
/* flex-direction: row; */
justify-content: space-evenly;
align-items: baseline;
}
.item-1 {
font-size: 1.5rem;
}
→ когда мы добавляем больше элементов в контейнер, элементы сдавливают друг друга.

Поэтому здесь мы используем новое свойство:
Мы изменим его на flex-wrap: wrap
.container {
display: flex;
/* flex-direction: row; */
/* justify-content: space-evenly;
align-items: baseline; */
flex-wrap: wrap;
}
.container {
display: flex;
/* flex-direction: row; */
/* justify-content: space-evenly;
align-items: baseline; */
flex-wrap: wrap;
align-content: flex-end;
}
→ свойство gap
Gap : используется для промежутка между элементами
.container {
display: flex;
/* flex-direction: row; */
/* justify-content: space-evenly;
align-items: baseline; */
flex-wrap: wrap;
align-content: space-around;
gap: 1rem;
}
Flex-grow - свойство, используемое для предоставления оставшегося пространства элементу.
.container {
display: flex;
}
.item-3 {
flex-grow: 1;
}
Определяет, насколько быстро будет уменьшаться предмет по сравнению с другими предметами.
Для предмета, который не уменьшается вообще, мы задаем flex-shrink: 0
.container {
display: flex;
}
.item-3 {
flex-shrink: 5;
}
Если у элемента есть размер, т.е. ширина, и мы хотим заменить этот размер на что-то другое, то мы используем следующую команду
Например, наш элемент имеет размер 100px, и мы хотим изменить его на 300px. Мы используем свойство flex-basis
.container {
display: flex;
}
.item-3 {
flex-basis: 300px;
}
→ flex - это сокращение для flex-grow, flex-shrink и flex-basis вместе взятых.
.item-1 {
flex: 1;
}→ перезаписывает значение align-items в контейнере. но для отдельного элемента.
.container {
display: flex;
}
.item-3 {
align-self: flex-end;
}
→ заказать
Это свойство используется для изменения порядка появления элементов.
Все элементы по умолчанию имеют свойство порядка 0.
.container {
display: flex;
}
.item-3 {
order: -1;
}
Предложение: не использовать свойство order слишком часто, так как оно нарушает семантику и доступность HTML.

20.08.2023 18:21
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в 2026-2027 годах? Или это полная лажа?".

20.08.2023 17:46
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.

19.08.2023 18:39
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в частности, магию поплавков и гибкость flexbox.
19.08.2023 17:22
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для чтения благодаря своей простоте. Кроме того, мы всегда хотим проверить самые последние возможности в наших проектах!

18.08.2023 20:33
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий их языку и культуре.

14.08.2023 14:49
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип предназначен для представления неделимого значения.