История HTML
В 1978 году Тим Бернерс-Ли начал работать в Европейской организации по ядерным исследованиям (CERN) консультантом по программному обеспечению. Именно там в 1980 году он для собственных нужд по обмену документами написал программу Enquire, которая через 9 лет нашла своё применение в следующем проекте.
В 1989 году Тим Бернерс-Ли предложил руководству проект распределённой гипертекстовой системы, которую он назвал Всемирная паутина. Проект был утверждён и реализован.
Первоначально идея состояла в том, чтобы при помощи гипертекстовой системы объединить всё множество ресурсов ЦЕРН в единую информационную систему.
Одним из компонентов технологий создания распределённой гипертекстовой системы стал язык гипертекстовой разметки HTML (HyperText Markup Language).
Первая версия HTML создавалась для цели форматирования научных документов. Таким образом, изначально HTML позволял выделять в тексте заголовки, абзацы, списки и им подобные структурные элементы.
Воспроизведение языка не должно было зависеть от технических особенностей аппаратных средств его визуализации. Со временем такая особенность была частично утрачена.
В 1991 году язык разметки был существенно доработан и стал использоваться именно для передачи гипертекста по сети во Всемирной паутине. Разработчики смогли решить две задачи:
- Предоставить дизайнерам гипертекстовых баз данных простое средство создание документа.
- Сделать это средство достаточно мощным, чтобы отразить имевшиеся на тот момент представления об интерфейсе пользователя гипертекстовых баз данных.
Первая задача была решена за счёт выбора теговой модели описания документа. Такая модель широко применяется в системе подготовки документов для печати. Таким образом гипертекстовая база данных в концепции Всемирной паутины — это набор текстовых файлов, размещённых на языке HTML, которые определяют форму представления информации, разметка и структуру связи между этими файлами, и другими информационными ресурсами.
Этот подход предлагал наличие ещё одного компонента технологии — интерпретатор языка. Функции интерпретатора разделены между сервером, на котором хранится файл и интерфейсом пользователя. Сервер, кроме доступа к документам и обработке гипертекстовых ссылок обеспечивал предпроцессорную обработку документа, например сжатие перед передачей по каналу связей, в том время, как интерфейс пользователя осуществляет интерпретацию конструкции языка, связанных с представлением информации. Именно этот интерпретатор в конечном счёте стал называться браузер.
До 1994 года HTML использовался только для структурной разметки данных, хотя в его составе уже появились теги для выделения жирным или курсивом. В том же 1994 году создаётся организация W3C (World Wide Web Consortium), которую возглавляет сам Тим Бернерс-Ли.
Стандарты HTML
В 1995 году в свет выходит рекомендация HTML 2.0. Создатели уже тогда понимали, что их детище из языка статичной разметки текста эволюционирует в основной инструмент создания динамических интернет-ресурсов.
Главным дополнением HTML 2.0 стало появление в составе языка форм с наборами пользовательских элементов управления, которые должны были использоваться для ввода собственных данных.
Официальной спецификации HTML 1.0 не существует. До 1995 года существовало множество неофициальных стандартов HTML. Чтобы стандартная версия отличалась от них, ей сразу присвоили второй номер.
После выхода второй версии сразу же началась работа над следующим поколением. В 1997 году выходит рекомендация 3.2, которая дополнила язык разметки таблицами, фреймами, изображениями и некоторыми другими важными тегами. Но самым важным достижением третьей версией является то, что её авторы вновь вернулись к проблеме визуализации разметки в браузере.
Результатом их работы в версии 3.2 стало появление самостоятельного языка CSS (Cascading Style Sheets), код которого можно теперь подключать в разметке и тем самым настраивать внешний вид страницы.
К выходу четвертой версии в 1997 году, сотрудники W3C избавили своё детище от ненужных элементов, которые с появлением CSS стали устаревшими и компрометировали идею разметки структуры от параметризации представления. Многие элементы были отмечены как устаревшие и не рекомендовались.
Одно из главных нововведений HTML 4.0 — появление объективной модели страницы (Document Object Model), элементами которой теперь можно было манипулировать по средствам скриптовых языков программирования. Самым популярным таким языком программирования является JavaScript. Симбиоз HTML, DOM и JavaScript назвали DHTML.
В 1998 году консорциум W3C начал работу над новым языком разметки, основанным на HTML 4, но соответствующему синтаксису XML. В последствие новый язык получил название XHTML. Первая версия одобрена в качестве рекомендации 26 января 2000 года. Планируемая версия XHTML 2.0 должна была разорвать совместимость со старыми версиями HTML и XHTML.
Многие разработчики и крупные игроки в веб-индустрии начали проявлять недовольство политикой и работой W3C. Они хотели, чтобы язык обладал обратной совместимостью, а также, чтобы в новом языке появились стандарты для создания приложений.
В 2006 году году руководитель консорциума Тим Бернерс-Ли написал в своём блоге, что работа над XHTML 2.0, видимо, не будет иметь смысла, поскольку разработчики сайтов не желают создавать свои проекты по XML-стандарту, а желают новой версии HTML.
2 июля 2009 года консорциум объявил, что полномочия рабочей группы XHTML 2.0 истекают в конце 2009 года. Таким образом, была приостановлена вся дальнейшая разработка стандарта XHTML.
HTML5
История HTML5 началась в 2004 году, когда большая часть видных деятелей веб-индустрии, а также крупных компаний, таких как Google, Mozilla, Opera, Apple и Microsoft создают свою собственную рабочую группу под названием WHATWG.
Перед тем как начать работу над новой версией HTML, рабочая группа создала две спецификации Web Forms 2.0 и WebApps 1.0, а затем эти две спецификации сделали частью HTML5.
С 2009 года, после закрытия XHTML 2.0, W3C продолжил разработку HTML5 уже совместно с рабочей группой WHATWG. Новая версия была создана как единый язык разметки, который мог бы сочетать синтаксические нормы HTML и XHTML. Он расширяет, улучшает и рационализирует разметку документа, а также добавляет единый API для сложных веб-приложений.
К 2012 году практически все современные браузеры в мире начинают понимать будущий стандарт, хотя ещё и остаются некоторые теги, которые браузеры ещё не понимают.
Стандарт новой версии был опубликован 28 октября 2014 года. В HTML5 реализовано множество новых синтаксических особенностей, например элементы видео, аудио и canvas, а также возможность использования SVG и математических формул. Эти новшества разработаны для упрощения создания и управления графическими и мультимедийными объектами на веб-страницы.
К сожалению, не все браузеры поддержали новые теги быстро. Так, например, браузер Safari для iOS 8.4, которая вышла 20 октября 2014 года не поддерживала семантический тег <nav>, а следующая версия с поддержкой тега вышла только 16 сентября 2015 года.