Тот факт, что язык HTML (язык гипертекстовой разметки/HyperText Markup language) принадлежит к формальным языкам, является для него ограничением, поскольку теги и их иерархическая структура жестко описаны в спецификации. Именно поэтому сегодня набирает популярность XML, который помогает вам создать теги и сформировать их структуру. Разница между HTML и XML заключается не только в тегах, но и в правилах написания кода. При работе с HTML, браузер не замечает различные незначительные недостатки и несовершенство структуры, а также неправильное указание атрибутов. XML не позволяет этим приемам пройти незамеченными, поэтому браузер обнаруживает неправильно сформированный документ и выдает ошибку.
Что такое XHTML?
XHTML, как промежуточная ступень развития между двумя языками, был разработан, чтобы научить разработчиков «правильному» способу мышления, изменить стиль написания кода и сузить разрыв между HTML и XML.
XHTML (Расширяемый язык гипертекстовой разметки /EXtensible Hypertext Markup Language) разработан для замены HTML и считается более строгой версией. В целом, W3C определяет XHTML как последнюю версию HTML, которая постепенно заменит её. Но только время покажет, произойдет ли это.
Если мы размышляем о совершенном коде для веб-страницы, его можно сравнить с программой, которая не будет скомпилирована до тех пор, пока не исправят все ошибки. Браузер действует как компилятор и не отображает документ, если он не соответствует спецификации. XHTML содержит все функции HTML, вводит более строгие правила для создания страниц, чтобы приблизиться к «идеальному» коду. Это позволяет создавать сайты независимо от устройства отображения и браузера. Другими словами, все современные браузеры и девайсы, включая компьютеры, смартфоны, КПК и нетбуки, будут правильно отображать сайт.
На практике не все так просто. Разработчики браузеров не могут позволить себе работать только с «правильным» кодом. Большинство сайтов в мире попросту не будет отображаться в таком браузере. И разработчики, и пользователи виноваты в таком положении вещей. Разработчики не обеспечивали надлежащую поддержку спецификаций в своих браузерах, а пользователи не потрудились последовать им.
По этим причинам, XHTML 1.x – это просто видимость двух языков с более строгим синтаксисом, а не многообещающий язык разметки, который непременно должен быть везде внедрен благодаря своим уникальным возможностям.