История языка HTML5

История языка HTML5

Здравствуйте! В этом уроке я хочу рассказать об истории языка HTML.  Дело в том, что историю развития языка HTML можно сравнить  что ли с детективным рассказом в том, что в ней есть свой  поворот событий, в результате  всех  появилась новая версия языка — HTML5.

 Вообще по большому счету язык HTML должен был уйти в небытие до 21 века. Организация W3C (World Wide Web Consortium) — Консорциум Всемирной паутины, которая собственно и занимается разработкой и внедрением стандартов Всемирной паутины, поставила крест на  языке HTML  еще в далеком 1998 г.

История языка HTML

А вот свои надежды на будущее  W3C возлагал на модернизированного наследника HTML — язык XHTML. Но  к счастью язык HTML не умер.  Нашлись добрые люди —  группа программистов-аутсайдеров, которые не только возвратили его к жизни, но и заложили прочную  основу для новых возможностей, которые мы с вами и разберем.

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

 Но успех имеет  и обратную сторону, посчитав что язык HTML  уже достаточно развитый и развиваться ему некуда консорциум W3C в 1998 году отказался от его поддержки в пользу  нвого языка XHTML.

 На рисунке ниже  можно  увидеть  историю развития языка  HTML в деталях:

история развития языка HTML

XHTML 1.0

Что же такое XHTML В стандарте XHTML описано то это то же самое, что и  HTML, но в нем предъявляются более жесткие  требования к следованию правилам вложенности элементов.

Например, допустим, что вы желаете выделить курсивом  слово HTML5  заголовка следующим образом:

<h1>История языка <i>HTML5</i></h1>

Но при этом вы вдруг случайно поменяли местами 2 последних тега:

История языка HTML5

Так вот когда браузер сталкивается с этой слегка подпорченной разметкой, то он в состоянии «понять», что вы действительно имели в виду, и без малейших  выделит последнее слово курсивом. Но вот несовпадающие теги  будут нарушать правила XHTML. Если вы проверите эту страницу в валидаторе формата XHTML , то увидите  сообщение, указывающее на эту ошибку.

Это бывает очень полезным при отлове мелких ошибок на сайте, которые могут повлечь за собой более серьезные проблемы.

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

Читайте также  HTML-атрибуты

Но многие из предполагаемых преимуществ XHTML — такие как функциональная совместимость с инструментами XML, облегчение обработки страниц автоматизированными программами, переносимость на мобильные платформы, а также расширяемость самого языка XHTML — так никогда и не материализовались.

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

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

XHTML 2: неожиданный провал

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

Например,  заголовки  6 уровней  (<h1>, <h2>, <h3> и т. д.) были заменены одним элементом <h> с уровнем обозначаемого им заголовка, зависящего от местонахождения этого элемента в веб-странице. Также  элемент <a> был заменен простой  возможностью,  которая позволяла  веб-разработчикам преобразовывать буквально  любой элемент в ссылку, а вот вместо атрибута alt элемента <img> был предложен новый способ предоставления содержимого вместо картинки.

Изменения такого рода были типичными для XHTML 2. С теоретической точки зрения, они делали язык более аккуратным и были более понятными. Но с практической стороны, они вынуждали всех изменить свой подход к созданию веб-страниц (не говоря об обновлении уже созданных веб-страниц), не добавляя при этом никакой новой функциональности, чтобы оправдать всю эту работу. Попутно из XHTML 2 было  также удалено несколько удобных элементов, которые все еще пользовались заслуженной  популярностью среди веб-разработчиков, таких как <b> (полужирный текст), <i> (текст курсивом) и <iframe> (для вложения одной веб-страницы в другую).

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

HTML5: возвращение к жизни

Приблизительно в то же самое время (начиная с 2004 г.) группа разработчиков начала рассматривать будущее Всемирной паутины в другом ракурсе. Вместо того чтобы попытаться разобраться, что было неправильным (или просто «грязным» с философической точки зрения) в HTML, они сфокусировались на том, чего в нем не хватало, что хотели бы иметь веб-разработчики для воплощения своих идей.

Читайте также  Семейства элементов HTML5

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

Такая ситуация вызывала особенную озабоченность среди разработчиков браузеров, поэтому группа дальновидных разработчиков из компании Opera Software (создатели браузера Opera) и компании Mozilla Foundation (создатели браузера Firefox) начали агитировать за включение в XHTML больше возможностей, ориентированных на разработчиков. Когда их попытки не увенчались успехом, компании Opera, Mozilla и Apple создали группу WHATWG (Web Hypertext Appliccation Technology Working Group — рабочая группа по технологии гипертекстовых веб-приложений) с целью работы над новыми решениями.

Группа не ставила перед собой задачу заменить HTML, ее целью было плавное расширение языка, и причем такое, чтобы расширения были обратно совместимыми. Надо сказать, что самая ранняя версия работы этой группы включала две спецификации расширений — Web Applications 1.0 и Web Forms 2.0. В конечном итоге эти стандарты эволюционировали в HTML5.

Предполагается, что число 5 в названии HTML5 означает: данный стандарт является продолжением стандарта HTML (последней версией стандарта HTML перед XHTML была версия 4.01). Это, конечно же, не совсем верно, т. к. HTML5 поддерживает все разработки, существовавшие в области создания веб-страниц в течение десяти лет после выпуска HTML 4.01, включая строгий синтаксис в стиле XHTML (если разработчики желают использовать его), а также множество инноваций для JavaScript. Тем не менее это название делает ясным следующее: язык HTML5 может поддерживать соглашения XHTML, но требует следования правилам HTML.

В 2000-х все интересное происходило в лагере группы WHATWG. После некоторого периода болезненных размышлений организация W3C решила распустить работающую над XHTML 2 группу и работать вместо этого над формализацией стандарта HTML5. На этом этапе первоначальный стандарт HTML5 был разделен на более управляемые части, и многие из его функциональных возможностей стали отдельными стандартами.

Что входит в состав HTML5?

Браузеров, «поддерживающих» HTML5, не существует. Вместо этого, каждый браузер поддерживает постепенно расширяющееся подмножество возможностей HTML5. Этот подход является как хорошим, так и плохим. Хорош он потому, что браузеры могут быстро реализовать готовые части стандарта HTML5, пока другие возможности продолжают развиваться. А плох он тем, что заставляет веб-разработчиков беспокоиться о проверке, поддерживает ли конкретный браузер каждую функциональную возможность, которую они хотят использовать.

Читайте также  HTML теги.

Далее приводится список и короткое описание основных категорий функциональных возможностей, охватываемых HTML5:

Ядро HTML5
Эта часть HTML5 составляет официальную версию спецификации организации W3C. Она содержит новые семантические элементы, новые и усовершенствованные элементы управления для веб-форм, поддержку аудио и видео, а также холст для рисования с помощью JavaScript. В эту категорию входит большинство функциональных возможностей, которые наилучшим образом поддерживаются браузерами.
Ранние возможности HTML5
Это возможности, которые были реализованы в первоначальной спецификации HTML5, подготовленной группой WHATWG. Большинство из них — это спецификации для возможностей, требующих JavaScript и поддерживающих развитые веб-приложения. Наиболее важными являются локальное хранение данных, приложения, работающие в автономном режиме, и обмен сообщениями.
Возможности, иногда называемые HTML5
Это возможности следующего поколения, которые часто считаются частью HTML5, хотя они никогда не входили в стандарт HTML5. Эта категория включает спецификацию CSS3 и геолокацию.

В результате перехода поддержки HTML сначала от организации W3C к группе WHATWG, а потом обратно, возникла довольно необычная ситуация. Технически организация W3C отвечает за определение, что является официальным HTML5, а что — нет. Но в то же самое время группа WHATWG продолжает свою работу, придумывая будущие возможности HTML. Только теперь она называет его не HTML5, а просто HTML, объясняя это тем, что HTML будет продолжать существовать, как живой язык.

Так как HTML является живым языком, то HTML-страница никогда не устареет и не перестанет работать. Для HTML-страниц никогда не потребуется номер версии (даже в блоке указания типа документа <doctype>), а веб-разработчикам никогда не понадобится обновлять свою разметку от одной версии языка к другой, чтобы она работала на новых браузерах.

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Плюсануть
Поделиться

Об авторе

admin administrator

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: