Как использовать изображения в HTML: теги, атрибуты, оптимизация
Для кого эта статья:
- Для начинающих и среднеопытных веб-разработчиков
- Для дизайнеров, желающих улучшить навыки работы с графикой на веб-страницах
Для специалистов, интересующихся оптимизацией производительности сайтов через управление изображениями
Графика на веб-страницах — это не просто украшение, а мощный инструмент коммуникации. Умелое использование изображений может превратить скучный текстовый документ в привлекательный сайт, который пользователи захотят изучать. Но для того, чтобы изображения работали на вас, а не против вас, необходимо знать правильные способы их интеграции в HTML-код. В этом руководстве мы разберем все аспекты работы с изображениями: от базового синтаксиса до продвинутых техник оптимизации. 🖼️
Хотите не просто читать о вставке изображений, а научиться профессионально создавать современные веб-страницы? Обучение веб-разработке от Skypro — это практический курс, где вы освоите не только работу с графикой, но и весь стек технологий для создания полноценных сайтов. Наши студенты уже через 3 месяца создают первые коммерческие проекты, а к концу обучения формируют портфолио, с которым успешно находят работу.
Основы добавления изображений через тег img
Тег img — это самостоятельный элемент HTML, который не требует закрывающего тега. Его основная функция — встраивание изображений на веб-страницу. Базовый синтаксис выглядит следующим образом:
<img src="путь_к_изображению.jpg" alt="Альтернативный текст">
Путь к изображению может быть абсолютным (полный URL) или относительным (от текущего документа). Рассмотрим оба варианта:
- Абсолютный путь:
<img src="https://example.com/images/photo.jpg" alt="Фотография природы"> - Относительный путь:
<img src="images/photo.jpg" alt="Фотография природы">
Относительные пути удобнее использовать при локальной разработке и когда структура проекта не меняется. Они делают код более переносимым между разными серверами. Абсолютные пути необходимы, когда изображение находится на другом домене.
Алексей Петров, frontend-разработчик
Однажды я работал над сайтом для клиента, который хотел разместить фотогалерею своих работ. Когда я закончил верстку и показал ему результат, он был в ужасе: все изображения загружались медленно, а на мобильных устройствах галерея выглядела ужасно.
Проблема была в том, что я использовал изображения в оригинальном размере (около 5-7 МБ каждое), не оптимизировал их и не настроил адаптивность. Мне пришлось полностью переработать галерею: создать несколько версий каждого изображения разных размеров, сжать их без потери качества и использовать атрибуты srcset и sizes для адаптивной загрузки.
После оптимизации страница загружалась за 2 секунды вместо 15, а галерея выглядела отлично на любом устройстве. Это был хороший урок о том, насколько важно правильно работать с изображениями в HTML.
Для тега img существуют несколько полезных правил, которые помогут избежать распространенных ошибок:
- Всегда указывайте атрибут alt — это улучшает доступность сайта и SEO
- Используйте изображения подходящего размера и разрешения
- Избегайте встраивания слишком большого количества тяжелых изображений на одну страницу
- Указывайте width и height, чтобы браузер мог зарезервировать место для изображения до его загрузки
При добавлении изображения убедитесь, что оно действительно доступно по указанному пути. Если браузер не может найти файл, вместо изображения будет отображаться иконка "сломанного изображения" и альтернативный текст. 🔍

Обязательные и дополнительные атрибуты изображений
Для корректной работы с изображениями в HTML необходимо знать все основные атрибуты тега img и их назначение. Рассмотрим их подробнее.
| Атрибут | Обязательность | Описание | Пример |
|---|---|---|---|
| src | Обязательный | Указывает путь к изображению | src="images/logo.png" |
| alt | Обязательный* | Альтернативный текст, описывающий изображение | alt="Логотип компании" |
| width | Рекомендуемый | Ширина изображения в пикселях или процентах | width="300" |
| height | Рекомендуемый | Высота изображения в пикселях или процентах | height="200" |
| loading | Опциональный | Управляет загрузкой изображения (eager/lazy) | loading="lazy" |
| title | Опциональный | Всплывающая подсказка при наведении | title="Наш новый логотип" |
* Атрибут alt технически не обязателен, но крайне рекомендуется для соответствия стандартам доступности и улучшения SEO.
Атрибут alt заслуживает особого внимания. Он выполняет несколько важных функций:
- Помогает пользователям с ослабленным зрением, которые используют программы чтения с экрана
- Отображается, когда изображение не может быть загружено
- Помогает поисковым системам понять содержание изображения
- Улучшает доступность сайта и соответствие стандартам WCAG
При написании альтернативного текста стоит придерживаться следующих принципов:
- Описывайте содержание и функцию изображения, а не просто его наличие
- Избегайте фраз вроде "изображение", "картинка" — это избыточно
- Для декоративных изображений используйте пустой атрибут alt="", чтобы скринридеры их пропускали
- Не превышайте 125 символов для оптимального восприятия
Современные браузеры поддерживают атрибут loading, который может значительно улучшить производительность страницы:
- loading="eager" — изображение загружается немедленно (поведение по умолчанию)
- loading="lazy" — изображение загружается только когда оно приближается к области видимости
Пример использования нескольких атрибутов вместе:
<img src="team-photo.jpg" alt="Наша команда на корпоративном мероприятии" width="800" height="600" loading="lazy" title="Корпоратив 2023">
Грамотное использование этих атрибутов не только улучшает пользовательский опыт, но и повышает технические показатели вашего сайта. 🛠️
Размеры и позиционирование графики на странице
Управление размерами и позицией изображений — ключевой аспект хорошей верстки. В HTML существует несколько подходов к заданию размеров изображений.
Задание размеров через HTML-атрибуты:
<img src="photo.jpg" alt="Фотография" width="400" height="300">
Задание размеров через CSS:
<img src="photo.jpg" alt="Фотография" style="width: 400px; height: 300px;">
Обратите внимание на важное различие: указание размеров в HTML-атрибутах позволяет браузеру зарезервировать место для изображения ещё до его загрузки, что предотвращает "прыжки" контента при загрузке страницы.
При работе с размерами изображений есть несколько распространенных подходов:
- Фиксированные размеры — точное указание ширины и высоты в пикселях
- Процентные размеры — размер относительно родительского элемента
- Автоматическая высота — указание только ширины для сохранения пропорций
- Максимальные размеры — ограничение максимальной ширины для адаптивности
Примеры различных подходов:
<img src="logo.png" alt="Логотип" width="200" height="80">— фиксированный размер<img src="banner.jpg" alt="Баннер" style="width: 100%; height: auto;">— адаптивная ширина<img src="photo.jpg" alt="Фото" style="max-width: 600px; height: auto;">— ограниченная максимальная ширина
Для позиционирования изображений используются различные CSS-свойства:
- float — обтекание изображения текстом (left/right)
- margin — отступы вокруг изображения
- position — абсолютное или относительное позиционирование
- display: block/inline-block — управление способом отображения
- object-fit — управление заполнением контейнера при сохранении пропорций
Одно из самых мощных свойств — object-fit, которое позволяет указать, как изображение должно заполнять свой контейнер:
- object-fit: contain — изображение целиком помещается в контейнер с сохранением пропорций
- object-fit: cover — изображение заполняет контейнер полностью, части могут быть обрезаны
- object-fit: fill — изображение растягивается, заполняя контейнер (без сохранения пропорций)
- object-fit: none — изображение не изменяет размер
- object-fit: scale-down — меньшее из значений none и contain
Пример использования object-fit:
<img src="portrait.jpg" alt="Портрет" style="width: 300px; height: 300px; object-fit: cover;">
Этот код создаст квадратное изображение размером 300×300 пикселей, при этом пропорции фото будут сохранены, а лишние части будут обрезаны. Это идеально подходит для создания галерей с изображениями одинакового размера, но разных пропорций. 📐
Адаптивные изображения для разных устройств
Современные веб-сайты должны хорошо выглядеть на любом устройстве: от огромных мониторов до маленьких смартфонов. Адаптивные изображения — ключевой компонент такого подхода.
Мария Соколова, веб-дизайнер
Работая над редизайном сайта туристической компании, я столкнулась с серьезной проблемой: сайт был переполнен высококачественными фотографиями курортов, каждая размером около 4-5 МБ. На десктопах всё работало приемлемо, но на мобильных устройствах пользователи просто закрывали сайт, не дождавшись загрузки.
Решение было найдено в создании адаптивной системы изображений. Мы подготовили каждую фотографию в трёх версиях: для мобильных (640px), планшетов (1200px) и десктопов (2000px). Затем внедрили srcset и sizes, а для изображений-героев использовали тег picture с несколькими источниками.
Результаты превзошли ожидания: время загрузки на мобильных устройствах сократилось с 12 до 3 секунд, bounce rate уменьшился на 60%, а конверсия выросла на 23%. Клиент был настолько доволен, что заказал дополнительные работы по оптимизации всего сайта.
HTML предлагает несколько мощных инструментов для создания адаптивных изображений:
- Атрибуты srcset и sizes для тега img
- Элемент picture для еще более точного контроля
- CSS-медиазапросы для стилизации изображений
Рассмотрим использование srcset и sizes:
<img src="photo-800w.jpg" alt="Фотография природы"
srcset="photo-400w.jpg 400w,
photo-800w.jpg 800w,
photo-1200w.jpg 1200w"
sizes="(max-width: 600px) 100vw,
(max-width: 1200px) 50vw,
33vw">
Здесь:
- srcset определяет список доступных изображений и их реальную ширину (w)
- sizes указывает, какой размер изображение займет в вьюпорте при разных условиях
- Браузер самостоятельно выберет наиболее подходящее изображение
Для случаев, когда нужно полностью изменить изображение (например, показать его кадрированную версию на мобильных устройствах), используется элемент picture:
<picture>
<source media="(max-width: 600px)" srcset="photo-mobile.jpg">
<source media="(max-width: 1200px)" srcset="photo-tablet.jpg">
<img src="photo-desktop.jpg" alt="Фотография природы">
</picture>
Элемент picture работает по принципу "первое совпадение": браузер проверяет каждый source сверху вниз и использует первый подходящий. Если ни один не подходит или браузер не поддерживает picture, используется стандартный img.
Помимо адаптации к размеру экрана, можно использовать разные форматы изображений в зависимости от поддержки браузером:
<picture>
<source type="image/webp" srcset="photo.webp">
<source type="image/jpeg" srcset="photo.jpg">
<img src="photo.jpg" alt="Фотография природы">
</picture>
Таблица соответствия разрешений экранов и рекомендуемых размеров изображений:
| Тип устройства | Типичное разрешение | Рекомендуемая ширина изображения | Фактор плотности пикселей |
|---|---|---|---|
| Смартфоны | 320px – 480px | 640px – 960px | 2x |
| Планшеты | 768px – 1024px | 1536px – 2048px | 2x |
| Ноутбуки | 1366px – 1440px | 1366px – 2880px | 1x – 2x |
| Десктопы | 1920px – 2560px | 1920px – 5120px | 1x – 2x |
При внедрении адаптивных изображений помните о нескольких ключевых рекомендациях:
- Всегда указывайте атрибут alt для базового тега img
- Размер файла имеет большее значение, чем его размеры в пикселях
- Тестируйте адаптивные изображения на разных устройствах и при разной скорости соединения
- Используйте современные форматы изображений (WebP, AVIF) с запасными вариантами
Правильная реализация адаптивных изображений значительно улучшает пользовательский опыт и производительность сайта. 📱💻🖥️
Оптимизация и форматы файлов для быстрой загрузки
Скорость загрузки сайта напрямую влияет на конверсию, пользовательский опыт и ранжирование в поисковых системах. Изображения часто составляют большую часть "веса" страницы, поэтому их оптимизация критически важна.
Рассмотрим основные форматы изображений и их применение:
- JPEG/JPG — идеален для фотографий и изображений с плавными переходами цвета
- PNG — подходит для графики с прозрачностью и резкими краями
- GIF — для простых анимаций и изображений с ограниченной цветовой палитрой
- SVG — векторный формат для логотипов, иконок и иллюстраций, масштабируемых без потери качества
- WebP — современный формат с высокой степенью сжатия, поддерживающий как потери качества, так и прозрачность
- AVIF — новейший формат с еще лучшим сжатием, постепенно получающий поддержку браузеров
Выбор формата зависит от типа изображения и требований к нему:
- Для фотографий: JPEG → WebP → AVIF (в порядке убывания размера файла)
- Для графики с прозрачностью: PNG → WebP → AVIF
- Для логотипов и иконок: SVG (предпочтительно) или PNG
- Для простых анимаций: GIF → WebP (с анимацией)
Основные стратегии оптимизации изображений:
- Выбор правильного формата для каждого типа изображений
- Сжатие без видимой потери качества (обычно можно сократить размер на 30-70%)
- Изменение размеров до фактически используемых на странице
- Удаление метаданных (EXIF и др.), которые не видны пользователю
- Использование современных форматов с запасными вариантами
- Ленивая загрузка для изображений, не видимых сразу
Пример использования WebP с запасным вариантом:
<picture>
<source type="image/webp" srcset="image.webp">
<img src="image.jpg" alt="Описание изображения" loading="lazy">
</picture>
Для оптимизации изображений существует множество инструментов:
- Онлайн-сервисы: TinyPNG, Squoosh, Kraken.io
- Графические редакторы: Photoshop, GIMP (функция "Save for Web")
- Инструменты командной строки: ImageMagick, MozJPEG, WebP Tools
- Автоматизация: Gulp/Webpack плагины для оптимизации при сборке
- CMS-плагины: для WordPress, Drupal и других систем
Помимо оптимизации самих файлов, можно использовать дополнительные техники:
- CDN (Content Delivery Network) для быстрой доставки изображений
- Кэширование через заголовки HTTP для уменьшения повторных загрузок
- Предзагрузка критических изображений:
<link rel="preload" as="image" href="critical-image.jpg"> - Пропорциональные заполнители для улучшения восприятия загрузки
Важно найти баланс между качеством изображений и их размером. Слишком сильное сжатие может привести к видимым артефактам и ухудшить впечатление от сайта. 🚀
Работа с изображениями в HTML — это намного больше, чем простое добавление тега img. Это целое искусство балансирования между визуальной привлекательностью и производительностью. Правильно оптимизированные и структурированные изображения не только делают сайт красивым, но и обеспечивают быструю загрузку, хорошую доступность и отличный пользовательский опыт на любых устройствах. Владея техниками, описанными в этом руководстве, вы сможете создавать веб-страницы, которые одновременно впечатляют и работают эффективно.
Читайте также
- Создание интернет-магазина на HTML: пошаговая инструкция для новичка
- 10 способов стилизации таблиц в HTML с помощью CSS: примеры
- 8 лучших способов оптимизации изображений для быстрой загрузки сайта
- Как превратить HTML в шедевры: 15 приемов CSS для новичков
- Безопасное открытие ссылок в новом окне: техники и рекомендации
- Атрибуты HTML-тегов: скрытая сила современной веб-разработки
- Создание HTML-портфолио: пошаговая инструкция для новичков
- Создание HTML-гиперссылок: основы, атрибуты, пути и техники
- Семантические теги HTML5: структура страниц для людей и роботов
- От HTML до веб-разработчика: путь овладения технологиями


