css властивість grid-auto-flow


Властивість grid-auto-flow визначає, як працює алгоритм автоматичного розміщення, точно визначаючи, як будуть розміщені елементи у сітці.

Властивість `grid-auto-flow`

Властивість grid-auto-flow впливає лише на елементів у сітці, які розміщуються в неявно створених треках. Елементи сітки, які не розміщені безпосередньо у певному місці, розміщуються автоматично в незайнятому місці. Ця властивість визначає, як саме ці елементи мають бути розміщені.

Ключове слово dense може стати в нагоді, якщо у вашій сітці є елементи з різними розмірами. Як правило, сітка просто розмістить ці елементи у порядку їх розташування у коді. Якщо всі об'єкти сітці мають один і той же розмір, і вони вписуються в одну доріжку, це зазвичай призводить до рівномірно розподіленої сітці з елементами сітки.

Але якщо деякі елементи сітки більші за іншіі, то ви можете отримати сітку, в якій елементи переходять на наступний рядок, коли ще залишається немало вільного місця до кінці у цьому рядку, і сітка виглядає трохи "зубчасто" та негарно.

Ось приклад такої поведінки сітки:

Властивість `grid-auto-flow`

Два елементи (2 і 3) ширші за інші й тому роблять хаос у розміщенні. А якщо для сітки застосувати ключове слово dense:

Властивість `grid-auto-flow`

Пустий простір заповнюється маленькими елементами.

автор: Svitlana

Синтаксис

grid-auto-flow: [ row | column ] || dense;

Властивість grid-auto-flow може отримувати 3 значень:

row

Алгоритм автоматичного розміщення, щоб заповнити кожен рядок по черзі, додаючи нові рядки за необхідності.

автор: Svitlana

column

Алгоритм автоматичного розміщення, щоб по черзі заповнювати кожен стовпчик, при необхідності додаючи нові стовпці.

автор: Svitlana

dense

Алгоритм автоматичного розміщення, який полягає на заповненні пустої клітинки раніше в сітці, якщо пізніше з'являться менші елементи.

автор: Svitlana

Значення без задання: row
Наслідує: Ні
Анімується: Так
JavaScript синтаксис: object.style.gridAutoFlow

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
grid-auto-flow 57.0 52.0 10.1 44.0 16.0 Не підтримується
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Mozilla Firefox Mobile Apple Safari
grid-auto-flow 57.0 52.0 10.3

Приклади

+ запропонувати свій приклад у пісочниці

Дві однакові сітки 2×2 — відрізняється лише напрямок заповнення: з row (типово) елементи йдуть уздовж ряду, з column — уздовж колонки. Слідкуй за порядком цифр.

HTML

<p>grid-auto-flow: row</p>
<div class="box row">
    <div>1</div><div>2</div><div>3</div><div>4</div>
</div>
<p>grid-auto-flow: column</p>
<div class="box col">
    <div>1</div><div>2</div><div>3</div><div>4</div>
</div>

CSS

.box {
    display: grid;
    grid-template: repeat(2, 40px) / repeat(2, 1fr);
    gap: 4px;
}

.row { grid-auto-flow: row; }
.col { grid-auto-flow: column; }

.box div {
    background: #0172ad;
    color: #fff;
    padding: 8px;
}
автор: Svitlana

Динамічний приклад

автор: Svitlana

Динамічний приклад

автор: Svitlana

З dense

автор: Svitlana

Без dense

автор: Svitlana

Простий приклад

автор: Svitlana

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід