Назад Вперед Зміст


Практична робота №16

Адаптивний дизайн на GRID.

Варіанти завдань практична робота 16

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

  1. Контейнер. По-перше, потрібно створити контейнер з класом .grid, всередині якого будуть знаходитися елементи сітки — у нашому випадку 9 елементів <div>. Сітка створюється на контейнері, і всі елементи всередині нього вирівнюються по заданій сітці. Просто додаємо до CSS контейнера властивість display: grid;

  2. Після цього можна вказувати інші властивості Grid. Але поки інші властивості сітки не задані, елементи будуть розміщені вертикально один під одним так, як ідуть у HTML-розмітці.

  3. Фракції. grid-template-columns: 200px 1fr 1fr; — перша колонка матиме фіксовану ширину 200px, а дві інші поділять залишок простору порівну. При зміні ширини екрана, перша колонка залишиться 200px, а фракції перерахуються.

  4. Функція repeat() для повторюваних колонок і рядків дозволяє уникнути повторень у коді:

    grid-template-columns: 1fr 1fr 1fr 1fr; те саме, що grid-template-columns: repeat(4, 1fr);

    grid-template-columns: 50px 200px 50px 200px; те саме, що grid-template-columns: repeat(2, 50px 200px);

  5. Функція minmax() для адаптивних колонок дозволяє задати мінімальний і максимальний розмір.

    grid-template-columns: minmax(100px, 500px) 100px 100px 100px; — перша колонка змінна, інші фіксовані.

  6. Функція minmax() для адаптивних рядків також застосовна:

    grid-template-rows: 50px minmax(50px, auto) 50px; — середній ряд росте відповідно до вмісту.

  7. Напрямок контенту в сітці.

    За замовчуванням — по рядках зліва направо. Властивість grid-auto-flow дозволяє змінювати напрям:

  8. Явна сітка — визначена через grid-template-columns і grid-template-rows.
    Неявна сітка — автоматично створювана, якщо контент не вміщується. Керується через grid-auto-rows і grid-auto-columns.

  9. Переміщення елементів, лінії сітки. Лінії сітки — це умовні межі між комірками. Сині — горизонтальні, червоні — вертикальні. Нумерація зліва направо і згори вниз або у зворотному порядку зі знаком мінус.

    Вертикальні лінії: grid-column-start, grid-column-end або скорочено grid-column: 2 / 4;

    Наприклад, перший елемент переміщуємо між 2 та 4 лініями:

    .grid > div:nth-child(1)

    Розтягнути на весь ряд: grid-column: 1 / -1;

  10. Переміщення по горизонтальних лініях (рядки)

    Наприклад, елемент 2 переносимо на перший ряд:

    .grid > div:nth-child(2)

    Можна використовувати: grid-row-start, grid-row-end або скорочено grid-row


Назад Вперед Зміст