edubun
Русский

Изображения и альтернативный текст

Чтобы элемент img был полезен, ему нужны два атрибута: src, который говорит, где картинка, и alt, который говорит, что на ней, когда её не видно.

Элемент img

Картинки не хранятся внутри HTML-файла. Страница указывает на них, и браузер загружает каждую как отдельный файл. Указывает элемент <img>. Он пустой, поэтому закрывающего тега у него нет, а его атрибут src хранит адрес изображения, абсолютный или относительный, точно как href у ссылки. Изображения являются замещаемыми элементами: браузер замещает элемент картинкой, и картинка сама определяет свой размер, если ты не укажешь другого.

<img src="images/sourdough.jpg"
     alt="A round sourdough loaf with a dark, cracked crust"
     width="400" height="300">
src, alt и настоящие ширина и высота файла в пикселях.

Атрибуты width и height задают размер изображения в пикселях, без единицы измерения. Ставь в них настоящий размер файла. HTML обычно приходит раньше картинок, поэтому без этих чисел браузер сначала раскладывает текст, а потом сдвигает его вниз, когда загружается каждое изображение, и это раздражает, если ты уже начал читать. С ними браузер с самого начала оставляет нужное место. Чтобы показать изображение меньше или больше, используй CSS, а не меняй эти числа.

Как писать альтернативный текст

Атрибут alt хранит текстовую замену. Экранный диктор читает его вслух, браузер показывает его, если файл не загрузился, а поисковики читают его, чтобы понять картинку. MDN предлагает простую проверку: что потеряется, если изображение не покажется? Напиши это, коротко. Для фото товара опиши то, что нужно знать, чтобы его выбрать. Для диаграммы передай её вывод, например «Продажи выросли втрое с января по март», а не «Столбчатая диаграмма».

  • Не начинай с «Изображение…» или «Картинка…». Экранные дикторы и так сообщают, что это изображение.
  • Декоративные изображения, например волнистая разделительная линия, получают пустой alt="". Тогда экранные дикторы их пропускают. Совсем не указать alt значит другое: некоторые экранные дикторы прочитают вместо этого имя файла.
  • Если изображение является единственным содержимым ссылки, его alt становится текстом ссылки, поэтому опиши, куда ведёт ссылка («Главная»), а не картинку («Логотип с хлебом»).
  • Если та же информация уже есть в тексте рядом с изображением, alt="" избавит от повтора.

Иллюстрации и подписи

Когда у изображения есть подпись, оберни обоих в <figure>, а подпись положи в <figcaption>. Так подпись связывается с изображением для вспомогательных технологий, чего обычный абзац под картинкой не делает. У подписи и alt разные задачи: подпись читают все, а alt заменяет изображение, когда его нет. Они не должны просто повторять друг друга. В figure не обязательно картинка: фрагмент кода, таблица или стихотворение тоже могут быть иллюстрацией.

Форматы, data URL и встроенный SVG

Фотографии обычно хранят в JPEG или WebP, плоскую графику с резкими краями в PNG, а рисунки из фигур часто в SVG, текстовом формате, который остаётся чётким при любом размере. Маленькое изображение можно даже записать прямо в src как data URL, начинающийся с data:image/svg+xml,; в упражнениях ниже так и сделано, чтобы ничего не загружалось с других сайтов. SVG можно также написать прямо в HTML элементом <svg>. Дай ему role="img" и дочерний <title>, чтобы у экранных дикторов было для него имя. И наконец, loading="lazy" у изображений далеко внизу длинной страницы говорит браузеру подождать, пока читатель до них не докрутит.

Ещё одно правило от MDN: используй только изображения, на которые у тебя есть права. Картинки из интернета защищены авторским правом, если лицензия не говорит иного, а если указать в src чужой сервер без разрешения (это называется хотлинкингом), владельцу ещё и придётся платить за твой трафик.

imgВстраивает изображение; пустой элемент
srcАдрес файла изображения
altТекстовая замена, которую читают или показывают, когда изображения не видно
alt=""Отмечает изображение как декоративное; экранные дикторы его пропускают
figure / figcaptionСамостоятельная иллюстрация и её подпись
замещаемый элементЭлемент, содержимое которого берётся из внешнего ресурса, как у img
SVGТекстовый векторный формат изображений, чёткий при любом размере
  1. Какие два атрибута нужны img, чтобы он был полезен?
    • src and alt
    • href and title
    • width and class
  2. Какой alt подходит для декоративной волнистой линии?
    • Пустой alt=""
    • alt="Волнистая линия"
    • Без атрибута alt
  3. Какой alt лучше всего для диаграммы, где продажи выросли втрое с января по март?
    • Продажи выросли втрое с января по март
    • Изображение столбчатой диаграммы
    • chart.png
  4. Логотип является единственным содержимым ссылки на главную страницу. Что должно быть в его alt?
    • Куда ведёт ссылка, например «Главная»
    • Цвета логотипа
    • Ничего
  5. Зачем задавать width и height у img?
    • Чтобы браузер оставил место и текст не прыгал
    • Чтобы уменьшить большие фото
    • Чтобы изображение загружалось быстрее
  6. Какой элемент хранит подпись к иллюстрации?
  7. Какой формат остаётся чётким при любом размере?
    • SVG
    • JPEG
    • PNG
  8. Есть ли у img закрывающий тег?
    • Нет, это пустой элемент
    • Да, закрывающий тег img
    • Только с alt
  9. С чего не стоит начинать альтернативный текст?
    • «Изображение…»
    • A
    • С названия предмета
  10. Что делает loading="lazy"?
    • Откладывает загрузку изображения, пока читатель не докрутит до него
    • Загружает изображение худшего качества
    • Скрывает изображение
Главное
  • img + src + alt; задавай width и height по настоящему размеру.
  • alt говорит, что потеряется без картинки; декоративные изображения получают alt="".
  • Используй figure и figcaption для изображений с подписью; давай встроенному SVG role="img" и title.
Источники курса (10)
  • WHATWG, HTML Living Standard (html.spec.whatwg.org, checked 2026-10-17)
  • MDN Web Docs, Learn web development: Structuring content with HTML, and the HTML element reference (developer.mozilla.org/en-US/docs/Learn_web_development/Core/Structuring_content and developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements, checked 2026-10-17)
  • MDN, HTML images (alt text guidance, checked 2026-10-17)
  • W3C WAI, Images tutorial and alt decision tree (w3.org/WAI/tutorials/images/decision-tree, checked 2026-10-17)
  • CERN, A short history of the Web (home.cern/science/computing/the-birth-of-the-web/short-history-web/, checked 2026-10-17)
  • W3C and WHATWG memorandum of understanding, 28 May 2019 (w3.org/2019/04/WHATWG-W3C-MOU.html, checked 2026-10-17)
  • W3C, Using ARIA, first rule of ARIA use (w3.org/TR/using-aria/, checked 2026-10-17)
  • W3C Markup Validation Service (validator.w3.org, checked 2026-10-17)
  • MDN, Viewport meta element (checked 2026-10-17)
  • Every code exercise was checked with a Playwright probe against a reference solution.

Проверено: 2026-10-17