Вебсправочник
Практика вёрстки

Две колонки с переходом в одну

Основной текст и дополнительный блок можно разместить в двух колонках, сохраняя логический порядок при переходе на узкий экран.

Назначение

Основной текст и дополнительный блок можно разместить в двух колонках, сохраняя логический порядок при переходе на узкий экран.

Как это работает

Сетка minmax(0,1fr) и ограниченная боковая колонка позволяет основной области сжиматься. Медиаусловие возвращает одну колонку. Порог выбирают по содержимому, а не по названию устройства.

Пример

<style>.layout{display:grid;grid-template-columns:minmax(0,1fr) 14rem;gap:24px}.layout>*{min-width:0;overflow-wrap:anywhere}aside{background:#eaf4ee;padding:16px}@media(max-width:700px){.layout{grid-template-columns:1fr}}</style>
<div class="layout"><section><h2>Основной материал</h2><p>Текст статьи и примеры.</p></section><aside aria-label="Дополнительно">Ссылки по теме</aside></div>

Что должно получиться

Широкая область имеет две колонки, узкая — одну. Основная статья остаётся первой и в HTML, и в видимой последовательности.

Граница применения и частая ошибка

Не переставляйте боковую панель визуально перед основным текстом, если её порядок при Tab останется прежним. Также проверьте длинные ссылки и код в обеих колонках.

Самостоятельная проверка

Добавьте длинный URL в основную область и увеличьте размер шрифта. Найдите минимальную удобную ширину двух колонок и скорректируйте порог на основании этого наблюдения.

HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Для проверки сетевых запросов, отправки данных или функций браузера используйте отдельную локальную страницу.

Попробуйте сами

HTML + CSS песочница
РЕЗУЛЬТАТ · ИЗОЛИРОВАННЫЙ ПРЕДПРОСМОТР
Измените код и нажмите «Запустить». JavaScript и внешние запросы отключены.
Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.