css властивість flex
Властивість flex дозволяє вказати параметри елемента, щоб він ефективно заповнював доступний простір. Елементи можуть бути розтягнуті пропорційно з урахуванням заданого співвідношення або стиснуті, щоб цілком вмістити всі елементи без переносів в один рядок.

Властивість flex — універсальна властивість, яка дозволяє одночасно задати наступні значення:
flex-growflex-shrinkflex-basis
У гнучкому контейнері, нащадки можуть бути розташовані у будь-якому напрямку, і можуть змінювати власні розміри: збільшуватися, щоб заповнити батьківський елемент, або зменшуватися, щоб не вилізти за його межі.
За змовчуванням нащадки не можуть бути меншими, ніж їхній вміст. Щоб змінити це, використовуйте властивості min-width i max-width.
- Нотатка
-
Властивість 'flex' працює тільки з гумовими елементами, тобто з тими елементами, у котрих властивість 'display' встановлена як
автор: Svitlanaflex(display: flex;абоdisplay: inline-flex;). - Нотатка
-
Рекомендується застосовувати властивість
автор: Svitlanaflexдля скороченого запису, а неflex-grow,flex-shrinkіflex-basisокремо. Тому що це робить стилі коротшими, зрозумілішими, а також тому, що універсальна властивість правильно скидає значення не заданих властивостей до початкового (без задання). - Нотатка
-
Якщо для властивості задати одне чи два ключових слова,
автор: Svitlanaflex-basisавтоматично змінює своє значення зautoдо0.
Синтаксис
flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;
Властивість flex може отримувати 7 значень:
-
flex-grow -
Число, яке вказує пропорції флекс елемента всередині контейнера.
автор: Svitlana -
flex-shrink -
Число, яке вказує коефіцієнт стиснення флексів в контейнері.
автор: Svitlana -
flex-basis -
Початкова довжина елемента. Можна вибрати зі значень
автор: Svitlanaauto,inherit,%,px,emабо будь-яку іншу одиницю виміру довжини -
auto -
Те ж, що й
автор: Svitlana1 1 auto -
initial -
Те ж, що й
автор: Svitlana0 1 auto -
none -
Встановлює значення властивості у значення без задання.
автор: Svitlana -
inherit -
Успадковує властивість від свого батьківського елемента
автор: Svitlana
| Значення без задання: | 0 1 auto |
|---|---|
| Наслідує: | Ні |
| Анімується: | Так |
| JavaScript синтаксис: | object.style.flex="1" |
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
| flex | 29.0<br>21.0 -webkit- | 28.0<br>18.0 -moz- | 9.0<br>6.1 -webkit- | 12.1 | 11.0<br>10.0 -ms- |
| Переглядач | |||
|---|---|---|---|
| flex | 4.4 | 28.0 | 9.2 |
Приклади
+ запропонувати свій приклад у пісочниці
У кожного елемента flex: 1 — вільний простір ділиться порівну, тож усі три колонки однакової ширини незалежно від довжини вмісту.
HTML
<div id="main">
<div>короткий</div>
<div>значно довший вміст усередині</div>
<div>середній текст</div>
</div>
CSS
#main {
display: flex;
}
#main div {
flex: 1;
padding: 8px;
border: 1px solid #0172ad;
}
Різні значення властивості
Проста демонстрації дії влативості
Приклад роботи властивості
Динамічний приклад
Коментарі
Коментарів ще немає — будьте першим!