HTML5 для веб-дизайнеров. Кит Джереми
тупный для технологий специальных возможностей и основанный на стандартах дизайн. Джереми уже предельно доступно описал DOM и JavaScript и делает то же самое в этой книге, в которой ровно столько слов и иллюстраций, сколько необходимо.
О HTML5 есть другие книги, а будет их гораздо больше. Появятся написанные техническим языком пятисотстраничные книги для разработчиков приложений, потребности которых во многом стимулировали развитие HTML5. Будут и еще более объемные книги – для разработчиков браузеров, в которых будут даваться решения технических проблем, о которых – хвала небесам! – нам с вами никогда не придется думать.
Но эта книга для вас – человека, который создает контент для веба, который делает осмысленную, семантическую разметку веб-страниц, который разрабатывает доступные для технологий специальных возможностей интерфейсы. Можно назвать эту книгу инструкцией по использованию HTML5. Ее цель – как и всех книг, которые выходят в каталоге A Book Apart, – пролить ясный свет на запутанный предмет, и сделать это быстро, чтобы вы могли сразу вернуться к работе.
1. Краткая история разметки
HTML – связующий язык Всемирной паутины. С помощью простых тегов, которые содержит этот язык, род человеческий сумел создать ошеломительно разнообразную сеть документов, связанных между собой гиперссылками – от Amazon, eBay и Wikipedia до личных блогов и страничек, посвященных котикам, похожим на Гитлера.
HTML5 – последняя на данный момент итерация этого лингва-франка, и хотя это и самое амбициозное изменение в нашем Всеобщем Наречии, но обновляется HTML не впервые. Язык начал развиваться с самого начала.
Как и собственно веб, гипертекстовый язык разметки (HyperText Markup Language, HTML) был детищем сэра Тима Бернерса-Ли, который в 1991 году составил документ под названием HTML Tags, предложив в нем около 20 элементов, которые можно было использовать для написания веб-страниц.
Не сэр Тим придумал использовать теги, состоящие из слов в угловых скобках; такие теги уже существовали в формате SGML (Standard Generalized Markup Language, стандартный обобщенный язык разметки). Вместо того чтобы изобретать новый стандарт, сэр Тим увидел все преимущества того, чтобы разрабатывать язык как надстройку к уже существующему стандарту, – эта тенденция заметна и сейчас, в разработке HTML5.
От IETF до W3C: путь к HTML 4
Такой вещи, как HTML 1, никогда не было. Первой официальной стала спецификация HTML 2.0, опубликованная IETF (Инженерный совет Интернета, Internet Engineering Task Force). Многие из пунктов появились в этой спецификации потому, что они уже существовали на практике. Например, лидировавший на рынке веб-браузер Mosaic уже в 1994 году позволял авторам веб-страниц вставлять в документы картинки с помощью тега <img>
. Впоследствии элемент img
появился в спецификации HTML 2.0.
На смену IETF пришел W3C, Консорциум Всемирной паутины (World Wide Web Consortium), который публиковал последующие обновления стандарта HTML на сайте http://www.w3.org. Во второй половине девяностых появился целый шквал исправлений в спецификации, пока в 1999 году не была наконец опубликована спецификация HTML 4.01.
В этот момент HTML подошел к своей первой развилке.
XHTML 1: HTML по правилам XML
Следующая после HTML 4.01 версия языка называлась XHTML 1.0. «X» означало «экстремальный», и каждый веб-разработчик, когда начинал произносить название языка, был строго обязан скрещивать руки в форме буквы «Х».
Ладно, на самом деле нет. «X» значило eXtensible, «расширяемый», а скрещивать руки, в общем, было необязательно.
Содержимое спецификации XHTML 1.0 было совершенно идентично спецификации HTML 4.01. Не было добавлено никаких новых элементов и атрибутов. Единственная разница заключалась в синтаксисе языка. Если HTML давал авторам большую свободу в том, как писать элементы и атрибуты, то XHTML требовал следовать правилам XML, гораздо более строгого языка разметки, на основе которого W3C строил большинство своих технологий.
Введение более строгих правил было не так уж и плохо. Это способствовало тому, что авторы документов стали вынуждены придерживаться общего стиля написания. Если раньше теги и атрибуты можно было писать прописными, строчными буквами или любой их комбинацией, то для того чтобы документ XHTML 1.0 проходил валидацию, требовалось, чтобы все его теги и атрибуты были написаны в нижнем регистре.
Публикация стандарта XHTML 1.0 совпала с началом поддержки CSS в браузерах. По мере того как веб-разработчики стали принимать только что появившиеся веб-стандарты (это началось с Web Standards Project), более строгий синтаксис XHTML стал рассматриваться как передовая практика в написании разметки.
Потом W3C опубликовал спецификацию XHTML 1.1.
Если XHTML 1.0 – это был простой HTML, пересказанный средствами XML, то XHTML 1.1 стал настоящим XML, беззаветно и полностью. Таким образом, сервер не мог отдавать его с MIME-типом text/html
. Но если же авторы публиковали документ с MIME-типом XML, то самый распространенный браузер в мире на тот момент – Internet Explorer – вовсе не мог отобразить документ.
Казалось, что W3C стал утрачивать