📘 Комбінування calc() і max() у CSS

Навчальний матеріал на тему "Комбінування calc() і max() у CSS", адаптований для використання у навчальному курсі з веб-технологій:

🎯 Мета уроку

Навчитися використовувати функції calc() і max() спільно для створення гнучких та адаптивних інтерфейсів.

🧠 Теоретична частина

1. Що таке calc()?

calc() дозволяє виконувати математичні обчислення безпосередньо в CSS. Це зручно, коли потрібно поєднати значення з різними одиницями виміру (наприклад, % і px).

Синтаксис:
width: calc(100% - 50px);

2. Що таке max()?

max() обирає найбільше з кількох значень.

Синтаксис:
width: max(300px, 50%);

У цьому прикладі ширина буде або 300px, або 50% — залежно від того, яке значення більше.

⚙️ Комбінування calc() і max()

Можна використовувати calc() всередині max() або навпаки. Це відкриває нові можливості для створення адаптивного дизайну, де розміри елементів можуть залежати від різних умов.

✅ Приклад 1: max() з calc()

width: max(300px, calc(100% - 2rem));
🔍 Пояснення:

Ширина елемента буде або 300px, або 100% - 2rem, залежно від того, яке значення більше.

✅ Приклад 2: calc() з max() всередині

padding-left: calc(max(1rem, 5%) + 20px);
🔍 Пояснення:

Використовуємо max() для вибору більшого значення між 1rem і 5%, потім додаємо до цього 20px

✅ Приклад 3: Комбінований підхід для заголовка

h1 {
  font-size: max(1.5rem, calc(1vw + 1rem));
}
🔍 Пояснення:

Заголовок буде мати мінімальний розмір 1.5rem, але якщо вікно ширше, розмір шрифту збільшиться завдяки 1vw.

🧪 Практичне завдання

Завдання:

Створіть адаптивний блок .card, який буде мати мінімальну ширину 320px, але при цьому не перевищуватиме 90% ширини вікна з урахуванням 40px відступу.

.card {
  width: max(320px, calc(90% - 40px));
  margin: 20px auto;
  padding: 1rem;
  background: #f0f0f0;
  border-radius: 10px;
}

❗ Корисні поради

  • max() і min() чудово підходять для адаптивної типографії.
  • calc() використовується, коли потрібно комбінувати різні одиниці або зробити точне позиціонування.

Функції можна вкладати одна в одну, але важливо зберігати читабельність коду.

📝 Домашнє завдання

  • Створіть адаптивний макет сторінки з використанням calc() і max().
  • Спробуйте адаптувати font-size, width, padding за допомогою цих функцій.

📎 Підсумок

Підсумкова таблиця
Функція Призначення Особливості
calc() Обчислення розмірів Підтримує різні одиниці
max() Вибір більшого значення Чудово підходить для адаптації
Разом Дає контроль та гнучкість Складніше для читання, але потужніше

Коментарі:

Завантаження коментарів…

Поділитися цим:

Оновлено: 12 жовтня 2025 року