1. Это не одна большая вещь
Вы можете спросить: «Как я могу использовать HTML5, если старые браузеры его не поддерживают?». Но сам вопрос вводит в заблуждение. HTML5 не одна большая вещь, это набор разных технологий. Вы не можете написать «поддерживается HTML5», потому что это противоречит здравому смыслу, но можете определить поддержку некоторых технологий HTML 5, таких как рисование, видео и геолокация.
Вы можете думать об HTML как о тегах и угловых скобках. Это, конечно, важная часть, но не вся. Спецификация HTML5 также устанавливает, как эти угловые скобки взаимодействуют с JavaScript посредством объектной модели документа (Document Object Model, DOM). HTML5 не просто определяет тег <video>, он также сообщает DOM обо всех видео-объектах. Вы можете использовать интерфейс прикладного программирования (API) для поддержки разных видеоформатов, проигрывания ролика, его остановки, отключения звука, отслеживания загрузки файла и многого другого построенного на взаимодействии пользователя и тега <video>.
2. Вам не надо отбрасывать имеющееся
Нравится вам это или нет, но вы не сможете отрицать, что HTML4 это наиболее удачный формат разметки. HTML5 основывается на этой удаче, поэтому вам не придется выкидывать имеющуюся разметку и переучиваться. Если ваше веб-приложение сегодня работает в HTML4, оно также будет работать в HTML5 и точка.
Вот конкретный пример: HTML5 поддерживает все те же элементы форм, что и HTML4, а также включает новые элементы. Некоторые из них, вроде ползунков и выбора даты, напрашивались давно, другие не столь очевидны. К примеру, поле для ввода адреса электронной почты выглядит как текстовое поле, но мобильные браузеры подстраивают для него экранную клавиатуру, что позволяет упростить набор адреса. Старые браузеры не поддерживают input type="email", поэтому покажут обычное текстовое поле и форма по прежнему будет работать с ним без изменения вёрстки или ухищрений со скриптами. Это позволяет вам уже сегодня улучшить свои формы, даже если некоторые пользователи до сих пор привязаны к IE6.
3. Легко начать
«Обновление» до HTML5 делается простым изменением доктайпа. Элемент <!DOCTYPE> должен всегда располагаться в первой строке кода любой веб-страницы. Предыдущая версия HTML определяла несколько вариантов доктайпа и выбор правильного был делом нелёгким. В HTML5 есть только один доктайп:
<!DOCTYPE html>
Смена доктайпа не разрушает существующую вёрстку, потому что все устаревшие теги, определённые в HTML4 также поддерживаются и в HTML5. Ко всему прочему, вы можете использовать, и корректно, новые семантические элементы вроде <article>, <section>, <header> и <footer>.
4. Это уже работает
Если вы желаете сделать рисунок, проигрывать видео, улучшить функциональность форм или построить оффлайновое веб-приложение, то обнаружите, что HTML5 прекрасно поддерживается браузерами. Firefox, Safari, Chrome и мобильные браузеры работают с тегом <canvas>, видео, геолокацией, локальным хранилищем и др. Google понимает аннотацию микроданных. Даже Майкрософт, который обычно тащится в хвосте стандартов, поддерживает основные возможности HTML5 в своем браузере Internet Explorer 9.
Все разделы этой книги содержат таблицу совместимости популярных браузеров. Гораздо важнее, что включено обсуждение вариантов для поддержки старых браузеров. Такие технологии HTML5 как геолокация и видео были первоначально реализованы с помощью плагинов вроде Gears или Flash. Другие возможности, вроде рисования, могут быть целиком эмулированы через JavaScript. Эта книга научит вас, как использовать встроенные функции современных браузеров без отбрасывания старых версий.
5. Он здесь чтобы остаться
Тим Бернерс-Ли изобрёл всемирную паутину в начале девяностых годов. Позже он основал W3C для поддержки веб-стандартов, организацию с более чем пятнадцатилетней историей. Вот что объявил W3C о будущем веб-стандартов в июле 2009:
Сегодня руководство заявило, что когда устав рабочей группы XHTML 2 завершится в конце 2009 года, то устав не будет продлён. Это делается для повышения ресурсов рабочей группы по HTML. W3C надеется, что это ускорит работу над HTML5 и пояснит позицию W3C относительно будущего HTML.
HTML5 уже здесь. Давайте погрузимся в него.