HTML5
HTML5 (HyperText Markup Language version 5) — это пятая версия языка гипертекстовой разметки (HTML), используемая для структурирования и представления содержимого веб-страниц. Является ключевой технологией во Всемирной паутине наряду с CSS (каскадными таблицами стилей) и JavaScript. Разработка спецификации началась в 2004 году в рамках организации WHATWG (Web Hypertext Application Technology Working Group), а официальная рекомендация Консорциума Всемирной паутины (W3C) была опубликована 28 октября 2014 года. HTML5 был разработан для улучшения поддержки мультимедийных возможностей, расширения семантической структуры документов и обеспечения обратной совместимости с предыдущими версиями HTML.
История
Предпосылки создания
К концу 1990-х годов HTML 4.01 (рекомендованный W3C в 1999 году) стал основным стандартом разметки. Однако с развитием веба возникла потребность в более гибких средствах для создания интерактивных приложений. Попытки W3C разработать следующую версию — XHTML 2.0 — были сосредоточены на строгости синтаксиса и модульности, но не получили поддержки основных производителей браузеров. В ответ на это в 2004 году компании Apple, Mozilla Foundation и Opera Software основали WHATWG для разработки новой спецификации, названной первоначально «Web Applications 1.0».
Работа над стандартом
WHATWG предложила подход, основанный на обратной совместимости и практичности, в отличие от радикального пересмотра XHTML 2.0. В 2006 году W3C признал необходимость сотрудничества и присоединился к разработке. В 2009 году W3C прекратил работу над XHTML 2.0, сосредоточившись на HTML5. В 2012 году между WHATWG и W3C возникли разногласия: WHATWG продолжил развитие «живого стандарта» (Living Standard) с постоянными обновлениями, а W3C выпустил фиксированную рекомендацию в 2014 году. С тех пор обе организации публикуют различные версии документа, но их содержимое в значительной степени совпадает.
Принятие и современное состояние
К 2025 году HTML5 является доминирующей версией HTML: все современные браузеры (Google Chrome, Mozilla Firefox, Apple Safari, Microsoft Edge) полностью его поддерживают. Старые версии HTML и XHTML практически не используются для новых проектов. WHATWG продолжает обновлять «живой стандарт», добавляя новые элементы и возможности, хотя фундаментальные изменения вносятся редко.
Новые возможности и отличия от предыдущих версий
Семантическая разметка
HTML5 ввёл ряд новых семантических элементов, которые позволяют более точно описывать структуру документа:
<header>— заголовочная часть раздела или страницы.<nav>— навигационные ссылки.<main>— основное содержимое документа (может быть только один на странице).<article>— независимая, самодостаточная часть (например, новость, пост).<section>— тематическая группа содержимого.<aside>— содержимое, косвенно связанное с основным (боковая панель, врезка).<footer>— подвал раздела или страницы.
Эти элементы заменяют повсеместное использование неспецифичных <div> и <span>, улучшая доступность для программ чтения с экрана и упрощая индексацию поисковыми системами.
Мультимедиа и графика
Одним из ключевых нововведений стала встроенная поддержка аудио и видео без необходимости использования сторонних плагинов (например, Adobe Flash):
<audio>— позволяет встраивать звуковые файлы. Поддерживаются форматы MP3, AAC, Ogg Vorbis, WAV (зависит от браузера).<video>— встраивает видеофайлы. Поддерживаются форматы MP4 (H.264), WebM, Ogg Theora.<canvas>— элемент для рисования растровой графики с помощью скриптов (обычно JavaScript). Используется для анимаций, игр, визуализации данных.
Также появился элемент <svg> для вграфики масштабируемой векторной графики (SVG), который может быть встроен непосредственно в HTML-документ.
Формы и ввод данных
HTML5 расширил возможности форм HTML:
- Новые типы полей ввода для
<input>:email,url,number,range,date,month,week,time,datetime-local,color. - Атрибуты:
placeholder(подсказка),required(обязательность заполнения),pattern(регулярное выражение для проверки),autofocus(автоматический фокус),min/max(ограничения значений). - Элемент
<datalist>— предопределённый список значений для поля ввода. - Элемент
<output>— для отображения результата вычислений.
API и взаимодействие с JavaScript
HTML5 включает множество программных интерфейсов (API), работающих через JavaScript:
- Drag and Drop API — поддержка перетаскивания элементов.
- History API — управление историей браузера для создания одностраничных приложений (SPA).
- Web Storage API — локальное (localStorage) и сессионное (sessionStorage) хранение данных на стороне клиента (альтернатива куки).
- Web Workers API — выполнение скриптов в фоновых потоках, не блокируя основной поток.
- Geolocation API — получение географического положения пользователя (при его согласии).
- Offline Web Applications — возможность работы приложений без подключения к интернету (с использованием кэша манифеста).
Упрощение синтаксиса
HTML5 ослабил строгие требования XHTML: необязательно закрывать одиночные теги (например, <br>), атрибуты можно указывать без кавычек (если они не содержат пробелов). Регистр символов в тегах и атрибутах не имеет значения (в XHTML требовался нижний регистр). Это сделало HTML проще для ручного написания и адаптации для невалидного контента.
Критика и ограничения
Фрагментация поддержки
Хотя все браузеры поддерживают HTML5, некоторые функции (особенно более новые, например, элементы <picture> или API WebRTC) могут иметь различия в реализации. Разработчикам часто приходится использовать полифилы (скрипты для эмуляции отсутствующих функций) или проверять возможности браузера (feature detection).
Зависимость от сторонних технологий
Несмотря на встроенную поддержку мультимедиа, для защиты контента (DRM) HTML5 использует расширение Encrypted Media Extensions (EME), которое подвергается критике со стороны защитников открытого веба за привязку к проприетарным технологиям.
Усложнение разработки
Расширение количества элементов, API и атрибутов делает современную веб-разработку значительно более сложной по сравнению с ранними версиями HTML. Разработчики должны владеть не только разметкой, но и глубокими знаниями CSS и JavaScript.
Безопасность
Новые API (например, Web Storage, Geolocation) создают дополнительные векторы атак. Некорректное использование <iframe> с элементом sandbox или уязвимости в Canvas-реализациях требуют от разработчиков повышенного внимания к безопасности.
Примеры использования
- Веб-приложения: Gmail, Google Docs, Trello — одностраничные приложения, использующие History API и Web Storage.
- Мультимедийные сайты: YouTube (видео через
<video>), SoundCloud (аудио через<audio>). - Игры: HTML5-игры на Canvas, WebGL (например, на платформах Kongregate, itch.io).
- Формы: интернет-магазины с валидацией данных на стороне клиента.
Будущее развитие
Стандарт HTML продолжает развиваться в рамках «живого стандарта» WHATWG. Основные направления: улучшение интеграции с WebAssembly (высокопроизводительный код в браузере), поддержка новых форматов изображений (AVIF), улучшение доступности (ARIA-атрибуты), а также постепенное добавление новых элементов и API для упрощения разработки.
Источники
- W3C. «HTML5: A vocabulary and associated APIs for HTML and XHTML». 28 октября 2014.
- WHATWG. «HTML Living Standard». Текущая версия.
- «HTML5: The Missing Manual», Matthew MacDonald, O'Reilly Media, 2013.
- «Introducing HTML5», Bruce Lawson, Remy Sharp, New Riders, 2011.
- «HTML5 for Web Designers», Jeremy Keith, A Book Apart, 2010.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →