HTML + CSS
  • 🧑‍💻Full-Stack Web Developer
  • ‼️Список корисних ресурсів
  • 📚Теорія
    • 1️⃣HTML
      • Введення в веб-розробку
      • Теги та атрибути
      • Скелет документа HTML
      • Семантика
      • Розмітка тексту
      • Розмітка тексту (2 частина)
      • Зображення
      • Структура HTML-документа
      • Таблиці
      • Символьні підстановки
      • Таблиця кодів символів
      • Відео та аудіо
      • Інструменти розробника
      • Валідація
    • 2️⃣CSS та селектори
      • CSS
      • Селектори
      • Псевдокласи стану
      • Колір
      • Каскад стилів
      • CSS-змінні
      • Одиниці вимірювання
      • Стилізація тексту
      • Властивості шрифту
      • Псевдоелементи тексту
      • Підключення сторонніх шрифтів
    • 3️⃣Блокова модель
      • Основи блокової моделі
      • Геометрія елемента
      • Типи елементів
      • Структурні псевдокласи
    • 4️⃣Flexbox
      • Концепції
      • Властивості контейнера
      • Властивості елемента
    • 5️⃣Grid
    • 6️⃣Зображення і декор
      • Типи зображень
      • Фон елемента
      • Властивості object-fit і object-position
      • Псевдоелементи
      • Градієнт
      • Тінь елемента
    • 7️⃣Векторна графіка
      • Що таке векторна графіка
      • SVG-елементи
      • SVG-документ
      • Використання векторної графіки
      • Зміна властивостей в SVG
    • 8️⃣Позиціонування
      • Позиційовані елементи
      • Властивість z-index
      • Властивість overflow
    • 9️⃣Переходи і анімація
      • CSS-переходи
      • CSS-анімація
      • 2D-трансформації
      • Перспектива
    • 🔟Форми
      • Для чого потрібні форми
      • Елемент <form>
      • Елемент <label>
      • Елемент <input>
      • Елемент <textarea>
      • Елемент <select>
      • Елемент <datalist>
      • Групування полів
      • Валідація форм
      • Валідація на клієнті
      • Псевдокласи стану
    • 🐭Адаптивна верстка
      • Медіа-запити
      • Метатег viewport
      • Інструменти розробника для адаптивної та респонсивної верстки
      • Типи верстки
      • Стратегія Mobile First
      • Вендорні префікси
      • Налаштування теми
    • 🐹Адаптивна графіка
      • Щільність пікселів
      • Респонсивні зображення
      • Респонсивні фонові зображення
      • Респонсивний елемент <img>
      • Елемент <picture>
    • 🦁Методологія ВЕМ
    • 🐶Препроцесор SASS
    • 🐰CSS фреймворки
      • Що таке CSS фреймворки
  • 👷‍♂️Практика
    • 👷Практика
  • Про мене
    • Про мене
Powered by GitBook
On this page
  1. Теорія
  2. Адаптивна верстка

Типи верстки

PreviousІнструменти розробника для адаптивної та респонсивної версткиNextСтратегія Mobile First

Last updated 1 year ago

У сучасній веброзробці застосунок однаково комфортно для користувача має відтворюватися на різних пристроях. Для цього веб-дизайнери розробляють макет одного застосунку для різних ширин екранів та пристроїв.

Переважно дизайнери розробляють три макети для застосунку:

  • Для мобільних пристроїв (mobile)

  • Для планшетів (tablet)

  • Для компʼютерів (desktop)

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

У звʼязку із цим в сучасній розробці існує два підходи до верстки сайтів:

  • адаптивний підхід (adaptive)

  • респонсивний підхід (responsive)

Підходи «адаптивної» і «респонсивної» верстки відрізняються тим, яким чином задається ширина контейнера і вкладених в нього елементів.

Адаптивна верстка використовує фіксовані точки перелому (breakpoints), коли дизайн сайту змінюється для відображення на різних пристроях. На кожному breakpoint веб-сайт може мати свій власний набір стилів та розмірів. Пристрої, які не входять в ці точки перелому, можуть отримувати менш оптимізоване відображення. Тобто браузер підбирає найкращий адаптований варіант верстки для даного розміру вʼюпорту.

Респонсивна верстка використовує відносні одиниці виміру та відносні стилі для елементів. Замість фіксованих точок перелому, елементи веб-сайту реагують на розміри екрану пристрою неперервно, змінюючи свої розміри та розташування згідно з розміром viewport. Це так звані "гумові сайти", які розтягуються під ширину екрану.

Під час написання медіа-запитів треба опиратися на визначені точки перелому дизайну. Це ширини в'юпорту ри яких суттєво змінюється дизайн. Їх можна визначити за макетом, створеним дизайнером.

У прикладі нижче встановлено точки перелому: 480px, 768px, 1024px, 1280px. На цих точках в обох контейнерів міняється колір.

У адаптивного блоку в точках перелому ширина блоку набуває фіксованого значення визначеного для ширини екрану вище якогось значення. У респонсивного блоку ширина встановлюється 100% ширини батьківського контейнера.

.adaptive {
 width: 100%;
 background-color: brown;
  
  @media (min-width: 480px) {
  width: 460px;
  background-color: violet;
  }
  
  @media (min-width: 768px) {
  width: 748px;
  background-color: orange;
  }
  
  @media (min-width: 1024px) {
  width: 1004px;
  background-color: green;
  } 
  
  @media (min-width: 1280px) {
  width: 1260px;
  background-color: red;
  }  
}
.responsive {
  width: 100%;
  background-color: brown;
  
  @media (min-width: 480px) {
  background-color: violet;
  }
  
  @media (min-width: 768px) {
  background-color: orange;
  }
  
  @media (min-width: 1024px) {
  background-color: green;
  } 
  
  @media (min-width: 1280px) {
  background-color: red;
  }   
}

При цьому адаптивний блок на вʼюпорті до 480px буде мати властивості респонсивного блоку, бо встановлено width: 100%;.

Щоб побачити цей ефект в дії відкрийте приклад CodePen в окремому вікні натиснувши Edit on Codepen і міняйте ширину вікна. На 480px, 768px, 1024px та 1280px ви побачите однакову ширину обох блоків. У проміжних ширинах адаптивний блок матиме фіксовану ширину, а респонсивний розтягуватиметься по ширині.

Який підхід використовувати - залежить від дизайну, типу веб-сайту і фінансових можливостей замовника. Для більшості веб-сайтів малого та середнього бізнесу достатньо адаптивної версії.

Респонсивна верстка дорожча в дизайні, проєктуванні та розробці. Її складніше і довше робити, але вона незамінна в інтерфейсах сучасних веб-застосунків.

Покликання:

📚
🐭
Основні концепції адаптивної та респонсивної верстки
Адаптивна верстка
Адаптивна і респонсивна верстка. Що краще?
Адаптивна і респонсивна верстка
Респонсивний і адаптивний дизайн
Адаптивна і респонсивна верстка