→ Предварительный обзор HTML5. Отличия html5 от предыдущих версий

Предварительный обзор HTML5. Отличия html5 от предыдущих версий

В последний год, а может и два, значительно возрос интерес к разрабатываемой в настоящее время спецификации HTML 5. Это касается и производителей браузеров, и создателей сайтов. Однако, целостного взгляда на отличия новой спецификации от старой я ещё не находил, поэтому решил изложить суть официального документа рабочей группы HTML5 о различиях этой спецификации с её предыдущей версией.

Эта статья не закончена, здесь описаны лишь первые два из четырёх основных разделов документа о различиях HTML4 и HTML5. Она будет дополнена и завершена в ближайшее время, также возможны обновления по мере изменения исходного документа W3C.

1. Введение

HTML непрерывно эволюционировал, так как был внедрен в Интернет в начале 90-х годов прошлого века. Некоторые функции были внесены в спецификации и использованы в различных версиях программного обеспечения. В каком-то смысле, реализации и методики авторов соответствовали друг другу и спецификациям, но с другой стороны, они продолжали отдаляться.

HTML4 стал Рекомендацией W3C в 1997. В то время как он продолжал для многих быть грубым руководством к основным функциям HTML, он также не обеспечивал достаточной информации для построения реализаций, которые взаимодействуют с другими реализациями, и что важнее с критическим объёмом созданного HTML-содержимого. Это относилось и к XHTML1 и DOM Level 2 HTML. HTML5 заменит эти документы.

Рабочий проект HTML5 начал разрабатываться в 2004 году с попытки изучения современных реализаций HTML и созданных с помощью них HTML-документов. Рабочий проект:

  • Описывает отдельный язык, названный HTML5, который может использовать синтаксис HTML или XML.
  • Определяет подробные модели обработки для развития способных к взаимодействию реализаций.
  • Совершенствует разметку для HTML-документов.
  • Внедряет разметку и API для зарождения идиом, таких как Web applications.

1.1. Нерешенные проблемы

HTML5 — пока еще незаконченная спецификация. Содержание HTML5, также как и содержание этого документа («HTML5 differences from HTML4»), напрямую зависящего от HTML5, всё ещё обсуждается в Рабочей группе HTML и WHATWG. Нерешенные проблемы включают в себя (список не исчерпывающий):

  • Семантическое определение некоторых элементов, ранее предназначенных лишь для оформления.
  • Сведения о доступности, возможностях замены и сопровождения альтернативным содержимым медиа-данных, таких как атрибуты alt и summary .

1.2. Обратная совместимость

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

Агенты пользователей, однако, всегда должны будут поддерживать устаревшие элементы и атрибуты, и именно поэтому спецификация полностью отделяет требования к авторам и агентам пользователей. Это означает, что авторы не могут использовать элементы isindex или plaintext , но агентам пользователей необходимо их поддерживать для совместимости с созданным HTML-содержимым.

1.3. Разрабатываемая модель

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

1.4. Влияние на веб-архитектуру

Предполагается, что на веб-архитектуру окажут влияние следующие области/возможности, определенные в HTML5:

  • Использование DOM в качестве основы для описания языка.
  • Концепция окружения браузера.
  • Разделение требований к агентам пользователей и авторам HTML-документов.
  • Использование обязательных определений вместо абстрактных определений с требованием эквивалента «чёрного ящика» при реализации.
  • Новая концепция модели содержимого (взамен концепции строчных и блочных элементов в HTML4).
  • Рассмотрение доступности как неотъемлемой концепции для создания новых возможностей (таких как атрибут hidden , элемент progress и т.п.) вместо каких-либо расширений (к примеру, атрибута alt).
  • Подробное определение семантики (например, алгоритма outline, взамен его нечёткой семантики в HTML4).
  • Элементы menu и command .
  • Основополагающие идеи.
  • Оффлайн-кеш веб-приложений.
  • Определение алгоритма контекстной навигации в браузере (browsing context "navigation" algorithm) и связанных с ним алгоритмов просмотра истории сессий (session history traversal algorithms).
  • Контроль типов содержимого и кодировок.
  • Очень строгое и недвусмысленное описание парсера.
  • Возможности contentEditable и UndoManager.
  • Архитектура Drag&Drop и Copy&Past.
  • Новые возможности «sandbox» («песочницы», учебно-эксперементальных сред) для iframe .

2. Синтаксис

HTML5 использует синтаксис HTML, который совместим с HTML4- и XHTML1-документами, опубликованными в Интернете, но несовместим с нечёткими функциями SGML языка HTML4, такими как команды обработки (processing instructions) и сокращенная разметка (shorthand markup). Документы, использующие синтаксис HTML почти всегда имеют медиа-тип text/html .

HTML5 также описывает подробные правила синтаксического анализа (включая обработку ошибок), которые в значительной степени совместимы с уже существующими популярными реализациями парсеров. Агенты пользователей должны использовать эти правила для документов, которые имеют медиа-тип text/html . Ниже приведен пример документа, который соответствует HTML-синтаксису языка HTML5:

Example document

Example paragraph

HTML5 также определяет медиа-тип text/html-sandboxed для документов, использующих HTML-синтаксис и содержащих непроверенное (разрабатываемое) содержимое.

Другим синтаксисом, который можно использовать для HTML5, является XML. Этот синтаксис совместим с реализациями и документами XHTML1. Документы, использующие такой синтаксис, должны иметь медиа-тип XML, а элементы должны быть помещены в пространство имён http://www.w3.org/1999/xhtml по правилам, в дальнейшем устанавливаемым спецификациями XML.

Ниже представлен пример документа, который соответствует XML-синтаксису языка HTML5. Обратите внимание на то, что документы XML должны иметь медиа-тип XML, например, application/xhtml+xml или application/xml .

Example document

Example paragraph

2.1. Кодировка символов

  • На транспортном уровне можно использовать заголовок HTTP Content-Type .
  • Использовать символ маркера порядка байтов Unicode (BOM) в начале файла. Этот символ обеспечивает сигнатуру для использования необходимой кодировки.
  • Используя элемент meta с атрибутом charset . Например, может использоваться для установки кодировки UTF-8. Эта запись заменяет более длинную , которая также допустима в HTML-синтаксисе.

Для установки кодировки в случае XML-синтаксиса авторы должны использовать правила, которые установлены в спецификациях XML.

2.2. DOCTYPE

HTML-синтаксис HTML5 требует наличия DOCTYPE для гарантирования того, что браузер отобразит страницу в режиме поддержки стандартов. У DOCTYPE нет иного предназначения и поэтому он необязателен для XML. Документы с медиа-типом XML всегда отображаются в режиме поддержки стандартов. Объявление DOCTYPE должно быть следующим: , оно регистронезависимо в HTML-синтаксисе. DOCTYPE в ранних версиях HTML был длиннее, потому что язык HTML был основан на SGML, и поэтому требовал ссылки на DTD . В HTML5 такой ссылки не требуется, и DOCTYPE нужен лишь для включения режима поддержки стандартов для документов с HTML-синтаксисом. Браузеры уже выполняют переключение в режим стандартов при использовании объявления .

2.3. MathML и SVG

HTML-синтаксис языка HTML5 допускает использование элементов MathML и SVG непосредственно внутри документа. Ниже представлен пример использования такой возможности:

SVG в text/html

Зелёный круг:

Более сложные сочетания также допустимы. Например, с помощью SVG-элемента foreignObject вы можете внедрять MathML, HTML внутрь фрагмента SVG, который сам находится внутри HTML.

2.4. Прочее

Существует несколько других синтаксических изменений, о которых следует упомянуть:

  • HTML теперь имеет встроенную поддержку идентификаторов IRI , хотя они могут использоваться в полной мере, только если документ имеет кодировку UTF-8 или UTF-16.
  • Атрибут lang может иметь значение пустой строки или верного идентификатора языка, также как и атрибут xml:lang в XML.
Статья основана на официальном документе W3C "HTML5 differences from HTML4" (от 10 марта 2010 года).

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Подобные документы

    История появления HTML5. Отличия HTML5 от предыдущих версий. Сравнительный анализ плюсов и минусов. Примеры российских сайтов на HTML5. Увеличение скорости работы. Технология Web Storage. Структурные возможности HTML5. Сравнение популярных браузеров.

    курсовая работа , добавлен 23.10.2013

    HTML5 - язык для структурирования и представления содержимого для всемирной паутины, а также основная технология, используемая в Интернете. Создание web-приложения и использованием технологии Asp.net MVC 3 и языка web-разметки HTML5. Состав платформы MVC.

    курсовая работа , добавлен 25.05.2012

    Жанры и форматы мультимедиа. Специфика интернета как медиаплатформы. Способы создания и распространения мультимедийного контента. Разработка контента мультимедийного интернет-портала о городских экстремальных видах спорта: аудитория, рубрикация и пр.

    дипломная работа , добавлен 20.08.2017

    Формирование и структура, взаимосвязь основных элементов учебного сайта "HTML5&CSS3" для предоставления пользователям информации о новейших технологиях в web-индустрии и обучения практическим навыкам их применения. Разработка руководства пользователя.

    курсовая работа , добавлен 17.06.2014

    Концепция Web 2.0. Язык разметки HTML5. Инструментальные средства для создания веб-приложений. Язык объектного анализа и проектирования UML. Осуществление наполнения и тестирования разработанного интернет-магазина. Форматирование содержимого Web-страниц.

    дипломная работа , добавлен 05.06.2016

    Исследование возможностей и областей использования языка программирования JavaScript. Сравнительный анализ языков программирования JavaScript и PHP. Разработка интерактивного Web-приложения на примере теста по теме "Программирование на языке Delphi".

    практическая работа , добавлен 04.02.2015

    Сравнительная характеристика, возможности и функции языков программирования JavaScript и PHP. Основные области их использования. Разработка интерактивного Web-приложения с применением JavaScript на примере теста по теме "Программирование на языке Delphi".

    курсовая работа , добавлен 01.07.2014

    Разработка и практическое внедрение мультимедийного обучающего курса по дисциплине "НЭК АСОИУ". Анализ свойств модифицированной LMS MOODLE и ее возможности по оказанию поддержки и структурированию контента. Эффективность подхода к формированию курса.

    дипломная работа , добавлен 21.05.2009

Лаклан Хант

Оригинал статьи на английском: http://www.alistapart.com/articles/previewofhtml5

Иллюстрации: Кевин Корнелл

Перевод: Влад Мержевич

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

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

Работа над HTML5 началась в 2004 году и в настоящее время осуществляется в рамках совместных усилий между W3C HTML WG и WHATWG . Многие ключевые игроки участвуют в работе W3C, в том числе представители четырех основных поставщиков браузеров: Apple, Mozilla, Opera и Microsoft, а также ряд других организаций и частных лиц со своими интересами и опытом.

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

Структура

HTML5 вводит целый ряд новых элементов, которые упрощают структуру страниц. Большинство страниц на HTML4 содержат типовые элементы, такие как «шапка», «подвал» и колонки. Ныне, как правило, в коде документа они обозначаются с помощью элементов

, описывая каждый атрибутом id или class .

На рисунке показано типичное расположение двух колонок сверстанных с использованием

с атрибутами id и class. Макет содержит шапку, подвал и горизонтальную навигацию ниже заголовка. Основное содержание включает статью и боковую панель справа (сайдбар).

Использовать элементы

правильно, потому что в HTML4 не хватает нужной семантики для описания этих частей более конкретно. HTML5 решает эту проблему путем внедрения новых элементов для представления каждого из этих разных разделов.

Элементы

могут быть заменены новыми элементами
,