PassFront
  1. PassFront
  2. База знаний
  3. Responsive дизайн (адаптивность)

Что такое container queries и чем они отличаются от media queries?

Responsive дизайн (адаптивность)

Container query применяет стили в зависимости от размера родительского контейнера, а не окна браузера.

Проблема media queries

Компонент-карточка может встречаться в узкой боковой панели и на широкой странице. Media query смотрит на окно и не знает, сколько места у конкретного блока.

Решение

.card-wrapper {
  container-type: inline-size;
  container-name: card;
}

.card { display: grid; gap: 8px; }

@container card (min-width: 420px) {
  .card {
    grid-template-columns: 160px 1fr; /* картинка слева, текст справа */
  }
}

Единицы контейнера

cqw, cqh, cqi — доли размера контейнера, похожи на vw и vh.

Когда что

  • Media query — общая раскладка страницы: шапка, колонки.
  • Container query — самостоятельные компоненты, которые должны выглядеть правильно в любом месте.

Коротко для собеседования

Container queries делают компонент независимым от окна: он подстраивается под размер своего контейнера.

Другие вопросы раздела