Буква "X" в XHTML означает "расширяемый" (простите, если заголовок раздела показался слишком многообещающим). Один из наиболее общих вопросов новичков звучит как "должен ли я использовать HTML или XHTML, и в чем собственно различие между ними?". По большей части они делают одно и то же, основное различие состоит в структуре. Основные различия показаны в Таблице 4.1.
Таблица 4.1. Различия между HTML и XHTML
HTML
XHTML
Элементы и атрибуты не различают регистр символов, <h1> эквивалентно <H1>.
Элементы и атрибуты различают регистр символов; они используют символы нижнего регистра.
Некоторым элементам не требуется закрывающий тег (например, параграфы, <p>), в то время как другие (называемые "пустыми элементами") запрещают закрывающий тег (например, изображения, <img>).
Все элементы должны быть явно закрыты (например, <p>Параграф</p>). Элементы без контента могут быть закрыты с помощью косой черты в начальном теге (например, <hr></hr> и <hr/> будут эквивалентны).
Если XHTML обрабатывается как text/html, то необходимо использовать сокращенный синтаксис для всех элементов, которые определены как "пустой" (http://www.cs.tut.fi/~jkorpela/html/empty.html#html), и помещать пробел перед косой чертой. Необходимо использовать длинную форму (с раздельными начальным и конечным тегами) для любого элемента, не определенного как пустой — даже если он не имеет никакого контента.
Некоторые значения атрибутов могут записываться без кавычек.
Значения атрибутов должны быть заключены в кавычки.
Для некоторых атрибутов можно использовать сокращения (например, <option selected>).
Для всех атрибутов должна использоваться полная форма атрибута (например, <option selected="selected">)
Серверы должны доставлять клиенту HTML с типом носителя text/html
XHTML должен использовать тип носителя application/xhtml+xml, но может использовать application/xml, text/xml или text/html. Если используется text/html, то необходимо следовать рекомендациям совместимости HTML, так как браузеры будут интерпретировать его как HTML (и использовать восстановление ошибок с учетом различий между языками).
Пока мы рекомендуем не беспокоиться слишком много о записи HTML или XHTML. Придерживайтесь советов, данных в этом курсе, и используйте тип документа HTML (больше о типе документа можно будет узнать в лекции 14), и вы не слишком ошибетесь.