Kodokon kodokon.com

Медиа: audio, video, figure и figcaption

Встраивай звук, видео и иллюстрации с подписями без единого плагина.

8 мин · 3 вопросов

Открыть этот урок в Kodokon

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

HTML
<video controls width="640" poster="preview.jpg">
  <source src="demo.webm" type="video/webm">
  <source src="demo.mp4" type="video/mp4">
  <track src="subs-fr.vtt" kind="subtitles"
         srclang="fr" label="French" default>
  Your browser doesn't support HTML5 video.
</video>
Видео с запасными форматами и субтитрами.

Три профессиональных вывода. Элементы source перебираются по порядку: браузер играет первый, который может декодировать. Атрибут poster показывает картинку-заставку до начала воспроизведения. И наконец, track добавляет субтитры в формате WebVTT: обязательно для доступности и очень ценно при просмотре без звука.

HTML
<audio controls preload="metadata">
  <source src="podcast-ep12.mp3" type="audio/mpeg">
  <a href="podcast-ep12.mp3">Download the episode</a>
</audio>
Аудиоплеер с запасной ссылкой на скачивание.

Чтобы проиллюстрировать содержимое, figure связывает медиаэлемент с его подписью через figcaption. И не только изображения: график, фрагмент кода или цитата тоже хорошие кандидаты. Подпись связана с фигурой программно, чего обычный абзац под картинкой предложить не может.

HTML
<figure>
  <img src="chart-sales.png"
       alt="Sales up 12% in Q2 2026">
  <figcaption>
    Sales trend, second quarter of 2026.
  </figcaption>
</figure>
Изображение и его подпись, связанные семантически.

Проверка знаний

Убедись, что запомнил ключевые моменты этого урока.

  1. Зачем размещать несколько элементов source внутри тега video?
    • Чтобы проиграть все видео одно за другим
    • Чтобы браузер выбрал первый формат, который умеет воспроизводить
    • Чтобы ускорить загрузку за счёт параллельности
  2. Какой атрибут показывает кнопки воспроизведения, паузы и громкости в видеоплеере?
    • controls
    • poster
    • preload
    • muted
  3. Какова роль figcaption?
    • Заменять атрибут alt у изображения
    • Давать видимую подпись, семантически связанную со своей figure
    • Показывать всплывающую подсказку при наведении на изображение