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

Практика: место под изображение до его выбора

В редакторе или прототипе полезно заранее показать область будущего изображения. Пустое состояние должно объяснять, что ресурс ещё не выбран, а не выглядеть как сломанная картинка или вечная загрузка.

Назначение

В редакторе или прототипе полезно заранее показать область будущего изображения. Пустое состояние должно объяснять, что ресурс ещё не выбран, а не выглядеть как сломанная картинка или вечная загрузка.

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

Aspect-ratio резервирует пропорции, а CSS Grid располагает пояснение по центру. Это статический макет: он не выбирает файл и не запускает загрузку. Текст остаётся настоящим содержимым DOM.

Пример

<style>.media-slot{box-sizing:border-box;max-width:32rem;aspect-ratio:16/9;display:grid;place-items:center;padding:1rem;border:2px dashed #789d86;background:#f0f6f2}.media-slot p{margin:0;text-align:center}</style>
<section><h2>Иллюстрация урока</h2><div class="media-slot"><p>Изображение ещё не выбрано.</p></div><p>После добавления проверьте описание и соответствие пропорциям.</p></section>

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

Область сохраняет учебные пропорции при обычном объёме текста. Пояснение сразу сообщает причину пустоты. При большом тексте размеры могут подстроиться под минимальные потребности содержимого.

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

Не назначайте пустому декоративному контейнеру роль изображения, если он лишь сообщает состояние. Не обещайте progressbar без измеряемого процесса. При появлении настоящего img нужно выбрать alt по смыслу изображения, а не копировать текст заглушки.

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

Сузьте окно и увеличьте шрифт. Замените короткую фразу длинным пояснением и проверьте отсутствие обрезки. В отдельном проекте добавьте реальное изображение с width и height и сравните сдвиг макета.

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

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

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