Консорциум W3C объявил о придании набору спецификаций HTML 5.2 статуса рекомендованного стандарта, а также опубликовал первый черновой вариант следующей версии стандарта – HTML 5.3. Ранее действующая спецификация HTML 5.1 объявлена устаревшей.

Спецификации HTML5 не ограничиваются только разметкой и включают в себя целый набор web-технологий, в совокупности формирующих открытую web-платформу – программное окружение для работы кросс-платформенных приложений, способных взаимодействовать с оборудованием, поддерживающие средства для работы с видео, графикой и анимацией, предоставляющей расширенные сетевые возможности.

Ключевые изменения:

  • Добавлена поддержка API Payment Request, который позволяет организовать быстрое совершение платежей при помощи кредитной карты, без необходимости повторного ручного ввода типовой информации, такой как данные о плательщике, номер карты (для подтверждения вводится CVC-код) и адрес доставки;
  • Система внешних браузерных плагинов (Plugin API) объявлена устаревшей, все новые технологии, например, средства интеграции с устройствами виртуальной реальности, предлагается развивать в составе штатных Web-платформ;
  • Определение тега main изменено для обеспечения поддержки современных адаптивных методов вёрстки, например, можно указывать несколько тегов main в документе;
  • Тег style теперь можно использовать внутри тега body;
  • Добавлен тег dialog, позволяющий формировать диалоговые окна и управлять ими через JavaScript API;
  • Интегрирована поддержка JavaScript-модулей, определённых в спецификации ECMAScript 2015. Для загрузки модулей можно использовать тег “script” с флагом “type=module”, а для экспорта и импорта модулей в JavaScript доступны операторы export и import;
  • Добавлена поддержка спецификации Content Security Policy Level 3 (CSP) и возможность использования определённого в ней атрибута nonce в теге link, через который можно передать одноразовое значение для определения факта загрузки и применения внешнего ресурса, указанного в теге link. Реализована возможность определения правил CSP для блокирования inline-элементов;
  • Добавлен атрибут ReferrerPolicy, позволяющий контролировать какие данные будут передаваться в заголовке Referer для элементов a, area, img и iframe.
    Например, same-origin – заполнять только для того же домена, strict-origin – всегда отправлять обрезанным, strict-origin-when-cross-origin – отправлять обрезанным на другие хосты;

  • Добавлена поддержка Presentation API для организации передачи содержимого экрана на другие устройства. Например, при открытии сайта на смартфоне можно организовать показ презентации на телевизоре. Для разрешения применения Presentation API следует использовать значение allow-presentation в атрибуте sandbox в iframe;
  • Тег div теперь может быть дочерним элементом тега dl;
  • Производителям браузеров предписано улучшить поддержку email-адресов, содержащих символы национальных алфавитов (подобные адреса должны корректно отображаться в теге input с типом email);
  • Для ссылок добавлена поддержка атрибута
    noreferrer, позволяющего организовать переход по ссылке без передачи Referer;

  • Добавлена поддержка методов registerContentHandler(), isContentHandlerRegistered() и isProtocolHandlerRegistered();
  • В интерфейс HTMLElement добавлена поддержка IDL-атрибута innerText;
  • Определён специальный URL “about:html-kind” для определения вида трека через URL в MP4;
  • URL “data:” теперь должен обрабатываться как не связанный с текущей страницей (отдельный origin);
  • Прекращена поддержка тегов keygen, menu и menuitem, атрибута showModalDialog, а также атрибута inputmode для текстовых данных в теге input.