Содержание

XHTML — это… Что такое XHTML?

XHTML (англ. Extensible Hypertext Markup Language — расширяемый язык разметки гипертекста) — семейство языков разметки веб-страниц на основе XML, повторяющих и расширяющих возможности HTML 4. Спецификации XHTML 1.0 и XHTML 1.1 являются рекомендациями консорциума Всемирной паутины.

Главное отличие XHTML от HTML заключается в обработке документа. Документы XHTML обрабатываются своим модулем (парсером) аналогично документам XML. В процессе этой обработки ошибки, допущенные разработчиками, не исправляются.

XHTML соответствует спецификации SGML, поскольку XML является её подмножеством. HTML обладает множеством особенностей в процессе обработки и фактически перестал относиться к семейству SGML, что и закреплено в черновике спецификации HTML 5.

Браузер выбирает парсер для обработки документа на основании заголовка content-type, полученного от сервера:

  • HTML – text/html
  • XHTML – application/xhtml+xml
  • Для локального просмотра на клиенте выбор основывается на расширении файла.
  • В Internet Explorer вплоть до 8-й версии парсер обработки XHTML-документов отсутствует.

Декларация DOCTYPE может не оказывать никакого влияния на определение парсера для обработки (зависит от используемого браузера).

Различия между XHTML и HTML

Согласно синтаксису XHTML:

  • Все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <img> или <br>), должны иметь на конце / (например, <br />).
  • Булевы атрибуты записываются в развёрнутой форме. Например, следует писать <option selected="selected">
    или <td nowrap="nowrap">.
  • Имена тегов и атрибутов должны быть записаны строчными буквами (например, <img alt="" /> вместо <IMG ALT="" />).
  • XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в URL, должны замещаться &lt; и &amp; соответственно. По рекомендации W3C браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор.
  • Кодировкой по умолчанию является UTF-8 (в отличие от HTML, где кодировкой по умолчанию является ISO 8859-1).

Для XHTML-страниц рекомендуется задавать MIME-тип —

application/xhtml+xml, но это не является обязательным, более того — браузер Internet Explorer 8 и младшие версии не смогут обрабатывать страницу, поэтому с XHTML 1.0 традиционно используется MIME-тип для HTML — text/html.

Существует три типа документов XHTML: strict, transitional и frameset. Наиболее употребительной и универсальной из версий XHTML является переходная (англ. transitional), поскольку она позволяет использовать iframe (включение содержимого одной веб-страницы в другую) и атрибут target у ссылок (для указания того, например, что ссылке необходимо открываться в новом окне). Фреймовая версия (англ. frameset

) представляет собой расширенный вариант transitional и добавляет к нему, как следует из названия, возможность установки frameset вместо body. DTD ((Document Type Definition) определение типа документа) строгой версии XHTML (англ. strict) не содержит многих тегов и атрибутов, описанных в DTD transitional и признанных устаревшими.

Версии XHTML

XHTML 1.0

Спецификация XHTML 1.0 одобрена в качестве рекомендации консорциума Всемирной паутины 26 января 2000 года. 1 августа 2002 года была опубликована вторая редакция спецификации.

XHTML 1.0 определяет три типа документов (по аналогии с HTML 4):

  • XHTML-1.0-Strict: тип, исключающий использование всех элементов и атрибутов, задающих графическое отображение (например, элемент
    font
    или атрибут bgcolor). Это наиболее предпочтительный тип документов.
  • XHTML-1.0-Transitional: тип, допускающий использование элементов и атрибутов, задающих графическое отображение. Указанные элементы рекомендуется использовать только при необходимости, например, для облегчения миграции документов c HTML 3.2 на XHTML.
  • XHTML-1.0-Frameset: тип, добавляющий к возможностям XHTML-1.0-Transitional использование фреймов.

XHTML 1.1

  • XHTML 1.1 Модульный (Module-based): авторы могут импортировать дополнительные свойства в их разметку.

XHTML Basic и XHTML MP

  • XHTML Основной (Basic): специальная облегчённая версия XHTML для устройств, которые не могут использовать полный набор элементов XHTML — в основном используется в миниатюрных устройствах, таких как мобильные телефоны. Подразумевается, что он заменит WML и C-HTML.
  • XHTML мобильного профиля (Mobile Profile): основанный на XHTML Basic, добавляет специфические элементы для мобильных телефонов.

XHTML 2.0

XHTML 2.0 является последней версией XHTML. Эта версия не достигла статуса рекомендации: деятельность рабочей группы XHTML 2.0 была прекращена в конце 2010 года, а все ресурсы перенесены в рабочую группу HTML 5[1]. Достигнутые результаты работы над XHTML 2.0 были опубликованы 16 декабря 2010 года в виде отчета рабочей группы (англ. 

Working Group Note).

Валидация XHTML документов

Валидным (т. е. отвечающим всем правилам) XHTML-документом считается документ, удовлетворяющий технической спецификации. В идеале, все браузеры должны следовать веб-стандартам и, в соответствии с ними, валидные документы должны отображаться во всех браузерах на всех платформах. Валидация XHTML-документа рекомендована даже несмотря на то, что она не гарантирует кросс-браузерности. Документ может быть проверен на соответствие спецификации с помощью онлайновой Службы валидации разметки W3C. Валидация обнаружит и разъяснит ошибки в XHTML-разметке.

Валидный документ должен содержать определение типа документа (DTD). DTD должен быть расположен до всех других элементов документа. Вот наиболее распространённые типы DTD для XHTML:

XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.0 Mobile
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">


Пространство имён тегов xhtml должно быть обозначено в корневом теге как «http://www.w3.org/1999/xhtml» [2]

Самыми распространёнными ошибками в XHTML-разметке являются:

  • Незакрытые элементы (XHTML, в отличие от HTML, требует закрытия всех элементов, в том числе не имеющих закрывающего тега, как, например, <br />).
  • Отсутствие альтернативных текстов для изображений (достигающихся применением атрибута
    alt
    , который помогает сделать документы доступнее для устройств, которые не в состоянии отображать изображения, или предназначенных для слабовидящих людей).
  • Присутствие текста непосредственно в теге <body> документа (должен быть объявлен блочный элемент, внутрь которого следует помещать содержимое).
  • Вложение блочных элементов внутрь инлайновых (внутристрочных) (например, блочные элементы <div> или <p> не могут быть вложены внутрь инлайновых элементов <a>, <span>, <em> и так далее).
  • Пренебрежение заключением значений атрибутов в кавычки (<a href=http://example.com/>
    вместо <a href="http://example.com/">).
  • Неправильное вложение элементов (конструкции вида <strong> <em> </strong> </em>).
  • Неправильное использование ссылок-мнемоник (например, & вместо &amp;)
  • Написание тегов и/или атрибутов прописными буквами (<DIV> вместо <div>).
  • Задание в теге <!DOCTYPE …> относительного пути к DTD-файлу ("DTD/xhtml11.dtd" вместо "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd").

Это неполный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.

Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.

См. также

Примечания

Ссылки

Валидаторы

Литература

  • Эд Титтел, Джефф Ноубл HTML, XHTML и CSS для чайников, 7-е издание = HTML, XHTML & CSS For Dummies, 7th Edition. — М.: «Диалектика», 2011. — 400 с. — ISBN 978-5-8459-1752-2
  • Стивен Шафер HTML, XHTML и CSS. Библия пользователя, 5-е издание = HTML, XHTML, and CSS Bible, 5th Edition. — М.: «Диалектика», 2010. — 656 с. — ISBN 978-5-8459-1676-1

dic.academic.ru

Xhtml — это… Что такое Xhtml?

XHTML

(англ. Extensible Hypertext Markup Language — Расширяемый язык разметки гипертекста) — язык разметки веб-страниц, по возможностям сопоставимый с XML. Как и HTML, XHTML соответствует спецификации XML является её подмножеством. Вариант XHTML 1.1 одобрен в качестве Рекомендации Консорциума Всемирной паутины (W3C) 31 мая 2001 года.

Преимущества

  • Для XHTML можно применять множество технологий, разработанных для XML. Например, XPath.
  • Анализ XHTML проще и быстрее, чем HTML. Поскольку синтаксис SGML, обработка XHTML возможна даже на мобильных телефонах с малыми ресурсами.

Различия между XHTML и HTML

  • Все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <img> или <br>) должны иметь на конце / (например, <br />).
  • Булевы атрибуты записываются в развёрнутой форме. Например, следует писать <option selected="selected"> или <td nowrap="nowrap">.
  • Имена тегов и атрибутов должны быть записаны строчными буквами (например, <img alt="" /> вместо <IMG ALT="" />).
  • XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в W3C браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор.
  • Кодировкой по умолчанию является ISO 8859-1).

Для XHTML страниц рекомендуется задавать MIME-тип — application/xhtml+xml, но это не является обязательным, более того — браузер Internet Explorer 8 и младшие версии, не смогут обрабатывать страницу, поэтому с XHTML 1.0 традиционно используется MIME-тип для text/html.

Также стандарт рекомендует указание <?xml version="1.0" encoding="utf-8"?> перед <!DOCTYPE>), как признак того, что данную страницу необходимо отображать в режиме обратной совместимости, а не согласно стандарту.

Существует три типа документов XHTML: strict, transitional и frameset. Наиболее употребительной и универсальной из версий XHTML является переходная (англ. transitional), поскольку она позволяет использовать iframe (включение содержимого одной веб-страницы в другую) и атрибут target у ссылок (для указания того, например, что ссылке необходимо открываться в новом окне). Фреймовая версия (англ. frameset) представляет собой расширенный вариант transitional, добавляя к нему, как следует из названия, возможность установки frameset вместо body. DTD строгой версии XHTML (англ. strict) не содержит многих тегов и атрибутов, описанных в DTD transitional, и признанных устаревшими.

Версии XHTML

  • XHTML 1.0 Переходный (Transitional): предназначен для лёгкой миграции из HTML 3.2 и для тех, кто использует инлайн-фрэймы.
  • XHTML 1.0 Строгий (Strict): полностью отделяет содержание документа от оформления (которое теперь задаётся только через CSS), многие атрибуты (такие как, например, bgcolor и align) более не поддерживаются, их поведение можно задавать только через таблицу стилей.
  • XHTML 1.0 Фрэймовый (Frameset): используется, если необходимо разделить окно браузера на несколько фрэймов.
  • XHTML 1.1 Модульный (Module-based): авторы могут импортировать дополнительные свойства в их разметку.
  • XHTML Основной (Basic): специальная облегчённая версия XHTML для устройств, которые не могут использовать полный набор элементов XHTML — в основном используется в миниатюрных устройствах, таких как мобильные телефоны. Подразумевается, что он заменит C-HTML.
  • XHTML мобильного профиля (Mobile Profile): основанный на XHTML Basic, добавляет специфические элементы для мобильных телефонов.
  • XHTML 2.0. Пока в разработке. Синтаксис еще больше приближен к синтаксису XML. Также является модульным языком.

Валидация XHTML документов

Валидным (т. е. отвечающим всем правилам) XHTML-документом считается документ, удовлетворяющий технической спецификации. В идеале, все браузеры должны следовать веб-стандартам и, в соответствии с ними, валидные документы должны отображаться во всех браузерах на всех платформах. Валидация XHTML-документа рекомендована даже несмотря на то, что она не гарантирует кросс-браузерности. Документ может быть проверен на соответствие спецификации с помощью онлайновой Службы валидации разметки W3C. Валидация обнаружит и разъяснит ошибки в XHTML-разметке.

Валидный документ должен содержать определение типа документа (

XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

Пространство имён тегов xhtml должно быть обозначено в корневом теге как «http://www.w3.org/1999/xhtml» [1]

Самыми распространёнными ошибками в XHTML-разметке являются:

  • Незакрытые элементы (XHTML, в отличие от HTML, требует закрытия всех элементов, в том числе не имеющих закрывающего тега, как, например, <br />).
  • Отсутствие альтернативных текстов для изображений (достигающийся применением атрибута alt, который помогает сделать документы доступнее для устройств, которые не в состоянии отображать изображения, или предназначенных для слабовидящих людей).
  • Присутствие текста непосредственно в теге <body> документа (должен быть объявлен блочный элемент, внутрь которого следует помещать содержимое).
  • Вложение блочных элементов внутрь инлайновых (внутристрочных) (например, блочные элементы <div> или <p> не могут быть вложены внутрь инлайновых элементов <a>, <span>, <em> и так далее).
  • Пренебрежение заключением значений атрибутов в кавычки (<a href=http://www.ru/> вместо <a href="http://www.ru/">).
  • Неправильное вложение элементов (конструкции вида <strong> <em> </strong> </em>).
  • Неправильное использование ссылок-мнемоник (например, & вместо &amp;)
  • Написание тегов и/или атрибутов прописными буквами (<DIV> вместо <div>).
  • Задание в теге <!DOCTYPE …> относительного пути к DTD-файлу, скопированного с сайта www.w3.org ("DTD/xhtml11.dtd" вместо "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd").

Это не полный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.

Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.

На сайте Консорциума Всемирной паутины также можно найти валидаторы для CSS,

См. также

Ссылки

Валидаторы

Литература

  • Брайан Пфаффенбергер, Стивен Шафер, Чак Уайт, Билл Кароу HTML, XHTML и CSS. Библия пользователя = HTML, XHTML, and CSS Bible. — 3-е изд. — М.: «Диалектика», 2006. — С. 762. — ISBN 0-7645-5739-4
  • Челси Валентайн, Крис Минник XHTML = XHTML. — М.: «Вильямс», 2001. — С. 480. — ISBN 0-7357-1034-1

Примечания

Wikimedia Foundation. 2010.

dic.academic.ru

Википедия — свободная энциклопедия

Избранная статья

Первое сражение при реке Булл-Ран (англ. First Battle of Bull Run), также Первое сражение при Манассасе) — первое крупное сухопутное сражение Гражданской войны в США. Состоялось 21 июля 1861 года возле Манассаса (штат Виргиния). Федеральная армия под командованием генерала Ирвина Макдауэлла атаковала армию Конфедерации под командованием генералов Джонстона и Борегара, но была остановлена, а затем обращена в бегство. Федеральная армия ставила своей целью захват важного транспортного узла — Манассаса, а армия Борегара заняла оборону на рубеже небольшой реки Булл-Ран. 21 июля Макдауэлл отправил три дивизии в обход левого фланга противника; им удалось атаковать и отбросить несколько бригад конфедератов. Через несколько часов Макдауэлл отправил вперёд две артиллерийские батареи и несколько пехотных полков, но южане встретили их на холме Генри и отбили все атаки. Федеральная армия потеряла в этих боях 11 орудий, и, надеясь их отбить, командование посылало в бой полк за полком, пока не были израсходованы все резервы. Между тем на поле боя подошли свежие бригады армии Юга и заставили отступить последний резерв северян — бригаду Ховарда. Отступление Ховарда инициировало общий отход всей федеральной армии, который превратился в беспорядочное бегство. Южане смогли выделить для преследования всего несколько полков, поэтому им не удалось нанести противнику существенного урона.

Хорошая статья

«Хлеб» (укр. «Хліб») — одна из наиболее известных картин украинской советской художницы Татьяны Яблонской, созданная в 1949 году, за которую ей в 1950 году была присуждена Сталинская премия II степени. Картина также была награждена бронзовой медалью Всемирной выставки 1958 года в Брюсселе, она экспонировалась на многих крупных международных выставках.

В работе над полотном художница использовала наброски, сделанные летом 1948 года в одном из наиболее благополучных колхозов Советской Украины — колхозе имени В. И. Ленина Чемеровецкого района Каменец-Подольской области, в котором в то время было одиннадцать Героев Социалистического Труда. Яблонская была восхищена масштабами сельскохозяйственных работ и людьми, которые там трудились. Советские искусствоведы отмечали, что Яблонская изобразила на своей картине «новых людей», которые могут существовать только в социалистическом государстве. Это настоящие хозяева своей жизни, которые по-новому воспринимают свою жизнь и деятельность. Произведение было задумано и создано художницей как «обобщённый образ радостной, свободной творческой работы». По мнению французского искусствоведа Марка Дюпети, эта картина стала для своего времени программным произведением и образцом украинской реалистической живописи XX столетия.

Изображение дня

Рассвет в деревне Бёрнсте в окрестностях Дюльмена, Северный Рейн-Вестфалия

ru.wikipedia.green

XHTML 2 против HTML 5 / Habr

Вернемся в прошлое на десять с небольшим лет, в 18 декабря 1997. Internet Explorer 4 был выпущен 3 месяца назад, The Mozilla Foundation еще не сформирована и до выхода Firefox еще далеко. Здесь нет XMLHttpRequest, нет даже XML. В этот день, больше десятилетия назад, HTML 4.0 был опубликован как рекомендация W3C.

Он и стал базой, на основе которой были разработаны современные web-стандарты. Конечно, были и усовершенствования. В 2000 году как официальная рекомендация был принят XHTML 1.0, а CSS 2 был реализован большинством производителей браузеров. Но основа Web – костяк, на котором построен каждый сайт, от простых визиток до комплексных приложений – по существу осталась неизменной.

По крайней мере, до сегодняшнего дня. После долгого затишья, кажется, уклад вещей в W3C меняется – в разработке находятся две конкурирующие спецификации, призванные заменить устаревшие стандарты HTML 4.x и XHTML 1.x. Обе инициативы работают под эгидой W3C (пусть так было и не всегда) и обе, по моему мнению, значительно превосходят текущую подборку языков web-разметки. Это HTML 5 и XHTML 2.0. И если вы читаете эту статью, скорее всего, в течение нескольких следующих лет вам придется работать с одной (или обеими) из них.


Работа над XHTML 2.0 началась вскоре после публикации XHTML 1.1 в качестве рекомендации в 2001 году. Первый черновой вариант XHTML 2.0 был опубликован в 2002 г., но значительная часть документа была в ненормативном и незавершенном состоянии (а кое-что осталось до сих пор). К 2004 году у некоторых видных деятелей отрасли – разработчиков браузеров, дизайнеров, web-разработчиков и владельцев контента – возросло недовольство дирекцией рабочей группы XHTML 2.0. Ссылаясь на закрытый характер работы W3C, они решили основать и разрабатывать свой собственный стандарт.

Итак, в 2004 г. была сформирована независимая коалиция, названная WHATWG (Web Hypertext Application Technology Working Group). Группа начала работу над спецификацией, названной Web Applications 1.0. В апреле 2007 года W3C проголосовало в пользу предложения рассмотреть спецификацию группы. Члены WHATWG начали работать в рамках W3C как группа разработчиков HTML и продолжили работу над своим проектом, который был переименован в HTML 5. Таким образом, черновик HTML 5 должен однажды стать рекомендацией W3C наряду с XHTML 2.0 (хотя этот день еще очень далек, и W3C уже пропустил несколько ключевых этапов проекта).

XHTML 2.0 полностью основан на XML, разработчики отказались от наследства SGML и синтаксических особенностей, присутствующих в текущей web-разметке. Он позиционируется как «язык общего назначения», с минимальным функционалом по умолчанию, который легко расширить, используя CSS или другие технологии (XForms, XML Events, и т.д.). Этот модульный механизм позволяет группе разработчиков XHTML 2 сосредоточить свое внимание на общей разметке документа, пока остальные разрабатывают механизмы представления, интерактивности, построения документа и т.д.

Первым приоритетом для рабочей группы XHTML 2 является дальнейшее отделение контента и структуры документа от его представления. Другими целями являются повышенное удобство и доступность, улучшенную интернационализация, большая независимость от устройств, меньшее количество скриптов и интеграция с Semantic Web. Разработчики были меньше заинтересованы в обратной совместимости, чем их предшественники (и группа разработчиков HTML), что привело к удалению некоторого синтаксического багажа, существовавшего в ранних воплощениях HTML. Результатом стал более чистый и сжатый язык, исправляющий многие старые недочеты Web-разметки.

В то время как концепция XHTML 2.0 предназначена быть революционной, группа разработчиков HTML выбирает прагматичный подход и создает HTML 5, как эволюционировавшую технологию. Получается, что HTML 5 является шагом вперед, но по-прежнему большей частью совместим с текущими стандартами HTML 4/XHTML 1. Однако HTML 5 предлагает множество изменений и расширений для HTML 4/XHTML 1, указывающих на многие недочеты своих предыдущих спецификаций.

В спецификации HTML 5 речь идет об отходе HTML от разметки документа и внедрении его в языки для создания web-приложений. С этой целью основное внимание концентрируется на создании более надежного и функционального клиентского окружения, предоставляющего различные API для разработки web-приложений. Среди прочего, спецификация предусматривает то, что реализации должны предоставить на стороне клиента постоянные хранилища данных (как вида ключ/значение, так и SQL-базы данных), API для воспроизведения аудио и видео, 2D-рисования посредством элемента canvas, обмен сообщениями между документами, отправляемые сервером события и сетевые API.

HTML 5 поддерживает SGML-подобный синтаксис, совместимый с текущими спецификациями HTML (хотя некоторые наиболее эзотерические черты SGML больше не поддерживаются). В спецификацию также включена вторичная «XML-сериализация», позволяющая разработчикам использовать правильные XML-документы. Путем сохранения SGML-подобной сериализации группа разработчиков HTML 5 достигла баланса между прагматизмом и прогрессом: разработчики могут выбирать между разметкой с использованием HTML-сериализации (которая больше похожа на HTML 4.x) или XML-сериализации (больше похожа на XHTML 1.x).

Никого не удивит, что обе группы разработчиков предлагают ряд сходных возможностей. Они указывают на известные «больные места» web-разработки и будут желанным дополнением в новом поколении языков разметки.

Удаление элементов представления

Ряд элементов будут удалены в XHTML 2 и HTML 5, так как они отвечают только за представление документа. Считается, что представление должно управляться посредством таблиц стилей.

Документы XHTML 2 и HTML 5 не могут содержать следующих элементов: basefont, big, font, s, strike, tt и u. XHTML 2.0 также удаляет элементы small, b, i и hr, а HTML 5 переопределяет их другим значением (отвечающим не за представление). В XHTML 2.0 элемент hr заменяется элементом separator дабы уменьшить путаницу (элемент hr предназначен для создания горизонтальных разделителей, но вовсе не обязательно используется для этого).

Списки навигации

Списки навигации были введены как в XHTML 2.0, так и HTML 5. В XHTML 2.0 они определяются новым элементом nl (Navigation List). Сам список должен начинаться дочерним элементом label, определяющим заголовок списка. После него может идти один или несколько элементов li, используемых для разметки ссылок. Также новинкой в XHTML 2.0 является возможность создания ссылки с любого элемента, используя для него атрибут href. Комбинация этих методов позволяет создать простую, легкую разметку меню:

<nl>
    <label>Category</label>
    <li href="/">All</li>
    <li href="/news">News</li>
    <li href="/videos">Videos</li>
    <li href="/images">Images</li>
</nl>

В HTML 5 для этих целей был введен элемент nav. К сожалению, nav не является списочным элементом, поэтому не может содержать дочерних элементов li для логической организации ссылок (возможно, будет разработана новая идиома). И так как для создания ссылок в HTML 5 остаются необходимыми элементы a, разметка навигации не очень элегантна:

<nav>
    <h2>Category</h2>
    <ul>
        <li><a href="/">All</a></li>
        <li><a href="/news">News</a></li>
        <li><a href="/videos">Videos</a></li>
        <li><a href="/images">Images</a></li>
    </ul>
</nav>

Улучшенные формы

Обе спецификации содержат новые возможности для создания более последовательных форм с применением меньшего количества скриптов. В XHTML 2.0 стандарт HTML-форм был полностью удален в пользу более обширного стандарта XForms. Группа разработчиков XHTML 2.0 не контролирует эту технологию, а только ссылается на нее в спецификации. Для упрощения повторного использования в XForms собираемые данные отделены от разметки элементов управления. Это мощный язык, но его полное описание выходит за рамки этой статьи. Достаточно сказать, что даже малые знания этой технологии значительно повысят скорость разработки.

HTML 5 сохраняет привычные HTML-формы, но добавляет некоторые типы данных для упрощения разработки и повышения удобства для пользователя. Добавлено несколько новых типов элемента input для email-адресов, URL, даты и времени и числовых данных. Это позволит браузерам создавать более удобный пользовательский интерфейс (например, диалоги для выбора даты и времени), интегрироваться с другими приложениями (выбор адресов из Outlook или Адресной Книги, например) и проверять введенные пользователем данные перед отправкой на сервер (сокращение JavaScript-проверок на стороне клиента).

Семантическая разметка

Обе спецификации охватывают приближающийся Semantic Web, позволяя разработчикам внедрять в документы более богатые метаданные. Как и с формами, группа разработчиков XHTML2 использует более сложную технологию, в то время как разработчики HTML 5 пошли по более простому пути.

В XHTML 2.0 метаданные могут быть внедрены при использовании нескольких новых атрибутов из Модуля Метаинформационных Атрибутов (Metainformation Attributes Module). В частности, новый глобальный атрибут role предназначен для описания значения данного элемента в контексте документа. Также используется технология «Внедрения структурированных данных в web-страницы» (Embedding Structured Data in Web Pages), для этого группа использует существующие стандарты, ссылаясь на RDF. Эта технология является чрезвычайно мощной, но также и сложной.

Группа разработчиков HTML выбрала подход, который очень поход на микроформаты – перегрузка атрибута class преопределенным набором классов, представляющих различные типы данных. На данный момент в спецификации имеется семь зарезервированных классов: copyright, error, example, issue, note, search и warning. Хотя такой метод может казаться не очень надежным, маловероятно, что в разных браузерах эти элементы будут отображаться по-разному. Имена классов достаточно конкретны, поэтому есть о чем побеспокоиться: элемент с классом copyright будет отображаться как авторские права, независимо от того, знал разработчик о зарезервированных классах или нет.

Ниже описаны некоторые возможности HTML 5, не имеющие аналогов в XHTML 2.0

API для web-приложений

HTML 5 вводит ряд API, значительно улучшающих оболочку для разработки на стороне клиента. Они делают из HTML 5 стек технологий для web-приложений, а не просто язык для разметки документов. Стоит отметить, что детали этих API сейчас проработаны группой разработчиков Web API (Web API working group), поэтому могут быть приняты как с остальной частью HTML 5, так и самостоятельно. Новыми API и соответствующими элементами являются:

  • API 2D-рисования посредством элемента canvas
  • API воспроизведения аудио и видео, поддерживающие возможность предоставлять браузеру несколько форматов, которые могут быть использованы в новых элементах audio и video.
  • Постоянные хранилища данных на стороне клиента, как вида ключ/значение, так и SQL-базы данных.
  • Оффлайн-API для web-приложений (схожее с Google Gears).
  • API, позволяющее web-приложениям сопоставлять себя с различными протоколов или MIME-типами.
  • API редактирования, которое может быть использовано в комбинации с глобальным атрибутом contenteditable.
  • Drag&Drop API, которое может быть использовано в комбинации с атрибутом draggable
  • Сетевое API, позволяющее web-приложениям использовать протокол TCP.
  • API, отражающее историю переходов браузера, позволяющее web-приложениям добавлять в нее записи, что позволит адекватно работать при нажатии кнопки «Назад» браузера.
  • API обмена сообщениями меду документами.
  • Отправляемые сервером события в комбинации с новым элементом event-source.

Новые элементы

В HTML 5 вводится ряд новых возможностей, которых нет в XHTML 2.0:

  • figure представляет изображение или график с заголовком. Вложенный элемент legend отображает заголовок, а обычный элемент img используется для изображения
  • m отображает текст, выделенный каким-либо образом. Может быть использован для подсветки слов при выдаче результатов поиска, к примеру.
  • time отображает дату и время
  • meter отображает измерения или величины
  • datagrid отображает интерактивное дерево данных или табличные данные
  • command отображает команду, которую пользователь может выполнить
  • event-source используется для «ловли» посылаемых сервером событий
  • output отображает определенный тип вывода, такой как результат вычисления скрипта
  • progress – отображает выполнение процесса, такого, как загрузка или выполнение серии трудоемких вычислений.

В дополнение, некоторые новые элементы помогают семантично разметить части документа. Их названия говорят сами за себя: section, article, header, footer и aside. А новый элемент dialog предназначен для отображения сообщений с использованием дочерних элементов: dt — для имени отправителя, а dd — для текста сообщения.

Отслеживание пользователей оповещением (pinging) URI

Новый атрибут ping может использоваться в элементах a и area для отслеживания пользователей. Этот атрибут позволяет указать разделенный пробелами список URI, которые должны быть оповещены при переходе по ссылке, это позволяет уйти от использования переадресации или JavaScript’ов.

Новые возможности, которые доступны только в XHTML 2.0

Любой элемент может быть ссылкой

В XHTML 2.0 атрибут href можно указать в любом элементе, тем самым превратив его в ссылку. С этим изменением элемент a больше не является необходимым, но он сохраняется.

Любой элемент может быть изображением (или другим ресурсом)

В XHML 2.0 элемент img был удален. Но не волнуйтесь – теперь любой элемент может быть изображением. Идея в том, что все изображения имеют длинное описание, которое эквивалентно самому изображению. Добавлением атрибута src к любому элементу мы говорим браузеру загрузить указанный ресурс и разместить его на месте элемента. Если по какой-либо причине ресурс недоступен, будет отображено содержание элемента. Это позволяет разработчикам предоставлять несколько эквивалентных ресурсов, используя разные форматы файлов и представления, путем вложения элементов друг в друга.

Строки заменяют br

Почтенный элемент br, использующийся для вставки перехода на новую строку, также был удален в XHTML 2.0. Для его замены введен новый элемент l. Он представляет строку текста, и работает как span, после которого стоит br по правилам текущей разметки.

Новая структура заголовков

Новые элементы h и section были введены для замены пронумерованных элементов h2h6. Цель этого – стремление передать иерархическую структуру документа. Текущие нумерованные заголовки линейны, не вкладываются друг в друга. При вложении элементов section и h в родительские section структура документа будет ясна.

Новые элементы

Группа разработчиков XHTML 2 сосредотачивала внимание на создании более общего, упрощенного языка. В виду этого, они воздержались от добавления множества специализированных элементов для представления различных видов контента. Они утверждают, что новый атрибут role предоставляет механизм для внедрения богатых метаданных, которые делают ненужными специализированные элементы. Тем не менее, было включено несколько новых элементов:

  • blockcode представляет компьютерный код
  • di представляет группу связанных терминов и определений в dl (definition list). Это удобно для слов с различными значениями или различным произношением.
  • handler представляет скриптовый обработчик событий с атрибутом type, который указывает язык обработчика. Если браузер его не понимает, обрабатываются потомки элемента-обработчика (иначе они игнорируются). Таким образом, обработчики могут вкладываться друг в друга для предоставления реализации на нескольких языках.

Оба предложения выглядят обещающе и содержат множество новых возможностей, указывающих на обычные проблемы web-разработки. Но ни одна спецификация является официальной рекомендацией, и так, скорее всего, будет в течение некоторого времени.

Несмотря на позднее начало, группа разработчиков HTML 5 имеет большую индустриальную поддержку и прошла больший путь в рекомендационном процессе. Их цель состоит в том, чтобы иметь полную спецификацию, с множеством взаимодействующих реализаций не позднее 2010 года (как я уже говорил, несмотря на это, консорциум W3C уже пропустил несколько этапов в процессе утверждения). С индустриальной поддержкой большинства главных разработчиков браузеров (единственным исключением является Microsoft) эти спецификации, вероятнее всего, будут внедряться быстро и последовательно, как только они достигнут стабильного состояния.

Всеобщее желание состоит в том, чтобы избежать очередной войны стандартов. К счастью, так как оба языка поддерживают пространства имен XML (или, в случае HTML-сериализации в HTML 5 — переключение DOCTYPE), маловероятно, что мы увидим такую же зависимость отображения документа от браузера, какая наблюдалась в 90-ых. Если отмести в сторону войны стандартов, будущее web-разработки выглядит светлым. Эти новые возможности разметки и API предоставят хорошую оболочку для web-разработки, которая должна сократить разрыв между настольными и web-приложениями.

Оригинал: Mike Malone, XHTML 2 vs. HTML 5
Перевод: Helios

habr.com

Что такое XHTML ?

XHTML Расшифровывается как ExtensibleHypertext Markup Language и на русском  — Расширяемый язык разметки гипертекста. Обратите внимание не расширенный, а расширяемый. Это значит, что данный язык

 пополняется (расширяется) до сих пор. Так что такое XHTML ? Основным отличием XHTML от того же HTML является способ обработки документа (интернет-странички). Стоит ввести еще одно определение. Парсер — программа или часть программы, которая выполняет синтаксический анализ. Также его еще называют синтаксический анализатор. Если еще проще, то данная программа выполняет анализ всего строения страницы, всего кода страницы. В HTML при нахождении ошибки, во время анализа она исправлялась, что требовало дополнительного времени — браузеру нужно было понять, что автор (разработчик) хотел написать. В XHTML эти ошибки уже не исправлялись. Например, при ошибке в каком-либо теге, он просто выводился с остальным текстом.

Еще одно отличие заключается в том, что все элементы должны быть закрыты, а одиночные теги должны после символов иметь знак /, например: <br />. Про тэги я напишу отдельную большую статью, также напишу про каждый тэг отдельно. Кодировка в XHTML — UTF-8 (наиболее распространенная сейчас), в HTML же использовалась   ISO 8859-1.

  • первая распространенная ошибка — указание в теге <!DOCTYPE …> относительного пути к DTD-файлу, скопированного с сайта www.w3.org, "DTD/xhtml11.dtd". Вместо этого нужно писать полный путь "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd".
  • нарушение принципа закрытия всех без исключения элементов. Язык XHTML, в отличие от того же  HTML, обязывает закрывать все элементы, в том числе не имеющих  тега закрытия, как, например, <br />.
  • Недопустимо отсутствие кавычек при описании значений атрибутов . Например конструкция <a href="http://proektsmr.ru/">  правильная, а  соответственно  конструкция <a href=http://proektsmr.ru/> недопустима в xhtml.
  • в xhtml, для размещения текста  в теге <body> должен быть сначала задан блочный элемент, внутрь которого и помещают сам текст, таких требований HTML не предъявляет
  • блочные  элементы, например <div> или <p> не могут быть вложены внутрь (внутри строчных) элементов <a><span><em> и т.п. XHTML здесь суров.
  • при формировании кода в  стандарте XHTML  нужно быть крайне аккуратным с  вложением элементов в конструкциях вида <strong> <em> </strong> </em>). XHTML ,  в отличии от HTML, более требователен к соблюдению правил.
  • XHTML требует обозначения символов согласно таблице символов. Из этого вытекает распространена ошибка. При использование спецсимволов в XHTML, а точнее неправильная реализация ссылок-мнемоник. Например символ двойной кавычки " нужно реализовывать согласно таблице так   &quot;
  • Нельзя использовать прописные буквы в описании тегов и атрибутов. Возьмем например тег <span>. <SPAN> - недопустимая конструкция. Возможно только строчное написание <span>.
  • В XHTML нет атрибута alt для изображений. Вот нету, и все тут.

Что такое Модуляризация XHTML?

Модуляризация XHTML это разделение XHTML 1.0, относительно HTML 4, на коллекцию абстрактных модулей, которые предоставляют специфические типы функциональности. Эти абстрактные модули реализованы в данной спецификации с использованием языка XML Document Type Definition/Определения Типа Документа, но ожидается появление реализации с использованием Схемы XML.
Правила определения абстрактных модулей и реализации их с использованием ОТД XML также определены в данном документе.

xhtml

Эти модули могут комбинироваться друг с другом и с другими модулями для создания поднабора и расширения типов документа XHTML, которые можно квалифицировать как членов семейства типов документов XHTML.

Для чего нужна Модуляризация XHTML?

Модуляризация XHTML — это задача специфицирования правильно определённых наборов элементов XHTML, которые (наборы) могут комбинироваться и расширяться авторами документов, создателями типов документов, другими спецификациями стандартов XML и дизайнерами приложений и продуктов  с целью дать техническую возможность разработчикам содержимого доставлять это содержимое на большое количество разнообразных платформ.

За последние два года многие специализированные рынки приняли HTML в качестве языка содержимого. Происходит быстрое продвижение в направлении использования HTML на большом количестве новых компьютерных платформ.
В настоящее время наблюдается активность в продвижении HTML на мобильные устройства (наручные компьютеры, портативные телефоны и т.п.), телевизионные устройства (цифровые телевизоры, Web-браузеры на базе TV и т.п.) и приборы (устройства с фиксированными функциями). Каждое из этих устройств имеет свои особые требования и ограничения.

Модуляризация XHTML предоставляет дизайнерам продуктов средства спецификации элементов, поддерживаемых устройством, с использованием стандартных строительных блоков и стандартных методов определения того, какие блоки используются.

xhtml

Эти модули служат «точками соответствия» для сообщества содержимого. Сообщество содержимого может теперь иметь установленную базу, поддерживающую определённые коллекции модулей, вместо того, чтобы беспокоиться об установленной базе, которая поддерживает то или иное изменение элементов XHTML. Использование стандартов является критичным для того, чтобы модуляризованный XHTML имел успех повсюду. Для разработчиков содержимого экономически нереально подгонять содержимое к каждому изменению элементов XHTML. Путём спецификации стандарта, любой процесс программы может автономно создавать содержимое для устройства, или устройство может автоматически загрузить программу, необходимую для работы модуля.

Модуляризация позволяет также расширять возможности представления XHTML  путём использования расширяемости XML без нарушения стандарта XHTML. Такой способ разработки даёт стабильную и реальную основу для разработчиков содержимого и издателей при обслуживании быстро множащихся технологических изменений на Web.

Абстрактные модули

Тип документа XHTML определён как набор абстрактных модулей. Абстрактный модуль определяет один вид данных, семантически отличающихся от всех других. Абстрактный модуль может комбинироваться в типах документа без глубокого понимания основных схем определения модулей.

Реализации модулей

Реализация модуля состоит из набора типов элементов, набора объявлений списка атрибутов и набора объявлений моделей содержимого, где любой из этих трёх наборов может быть пустым. Объявление списка атрибутов в модуле может модифицировать тип элемента вне типов элементов, определённых в модуле, а объявление модели содержимого может модифицировать тип элемента вне набора типов элементов модуля.

Одним из механизмов реализации являются ОТД XML. ОТД XML это способ описания структуры класса документов XML, в целом известного как тип документа XML.
ОТД XML описаны в Рекомендациях XML 1.0 [XML].
Другим механизмом реализации является Схема XML [XMLSCHEMA].

Гибридные типы документов

Гибридный тип документа это тип документа, составленный из коллекции ОТД XML или Модулей ОТД. Основным назначением Каркаса Модуляризации, описанного в данном документе, является: дать автору ОТД возможность сочетать элементы из нескольких абстрактных модулей в гибридный тип документа, разрабатывать документы относительно этого гибридного типа документов и легализовать эти документы относительно ассоциированного определения гибридного типа документа.

xhtml

Одним из самых важных преимуществ XML по сравнению с SGML является то, что XML уменьшает препятствия на пути к стандартизации наборов элементов, что позволяет сообществам обмениваться данными в подходящем формате.
В то же время, относительно статичная природа HTML как языка содержимого Web означает, что любой член этих сообществ раньше имел мало надежд на то, что его типы документов XML могут быть широко приняты в качестве стандартов Web.
Каркас Модуляризации даёт возможность динамически сочетать эти разнообразные типы документов в типах документов семейства XHTML, устраняя в дальнейшем препятствия на пути включения этих зависящих от специфики домена словарей в документы XHTML.

Легализация

Использование правильно сформированных, но не легализованных документов, является важным преимуществом XML. В процессе разработки типа документа, однако, важно дополнительное преимущество, предоставляемое легализующим разборщиком при проверке ошибок. Один и тот же оператор применяется к типам документов XHTML с элементами из разных абстрактных модулей.

Документ является объектом особого типа документа, определённого в ОТД, идентифицированном в прологе документа. Легализация документа это процесс проверки того, выполняет ли документ правила определения типа документа.

Один документ может состоять из нескольких фрагментов. Легализация только этих фрагментов, где каждый фрагмент имеет отличный от других тип документа, находится вне специфики данной работы — поскольку это потребует технологий, ещё не разработанных.

Тем не менее, Каркас Модуляризации даёт возможность интегрировать несколько определений типов документов и формировать новый тип документа (напр., SVG, интегрированный в XHTML). Определение нового типа документов может использоваться для нормальной легализации XML 1.0.

Модель форматирования

Предыдущие версии HTML пытались определить части такой модели, которые требовались от пользовательского агента (ПА) для использования при форматировании документа. С появлением HTML 4, W3C начал процесс отделения представления от структуры. XHTML 1.0 поддерживает это разделение, и данный документ продолжает движение от HTML и его потомков в этом направлении. Соответственно, данный документ не выдвигает никаких требований к модели форматирования, ассоциированной с представлением документов, размеченных с помощью типов документов Семейства XHTML.

xhtml

Наоборот, данный документ рекомендует, чтобы авторы содержимого полагались на механизмы определения стилей, такие как CSS, при определении модели форматирования для своего содержимого.
Если ПА поддерживают механизмы стилей, то документы будут сформатированы так, как ожидается.
Если ПА не поддерживают механизмы стилей, то документы будут сформатированы так,  как определяет сам ПА. Это позволяет ПАгентам Семейства XHTML поддерживать сложные (так и просится — навороченные; А.Р.) модели форматирования на тех устройствах, где это возможно, и изменять  модели форматирования на тех устройствах, где это допустимо

proektsmr.ru

Разница между HTML и XHTML

Вы здесь: Главная — HTML — HTML Основы — Разница между HTML и XHTML

Разница между HTML и XHTML

При выборе DOCTYPE необходимо чётко определиться, какой из двух стандартов выбрать: HTML или XHTML. И для облегчения Вашего выбора я решил разобрать разницу между HTML и XHTML.

Главное отличие между HTML и XHTML в том, что XHTML основан на синтаксисе XML. А, следовательно, он более строгий, и в нём нельзя допускать тех вольностей, которые можно допустить в HTML.

А теперь по пунктам разберём особенности синтаксиса XHTML:

1. Каждый тег должен закрываться

Парные теги должны закрываться и в HTML тоже, но все мы знаем, что в HTML существует множество одиночных тегов (например, <img>), и мы смело могли написать таким образом:

<img src = "foto.jpg" >

Однако, в XHTML все теги должны закрываться, даже одиночные, причём закрываются они следующим образом:

<img src = "foto.jpg" />

Разница только в слеше перед второй угловой скобкой.

2. Все спецсимволы должны быть заменены на сущности

То есть нельзя писать вот так: «&«, нужно писать этот символ только сущностью, то есть «&amp;«. В HTML подобного правила не существует.

3. Все значения атрибутов должны быть в кавычках.

Все мы с Вами знаем, что в HTML можно написать вот так:

<img src = "foto.jpg" width = 15 >

То есть у нас значение атрибута «width» находится без кавычек. В XHTML это недопустимо, и там надо писать вот так:

<img src = "foto.jpg" width = "15" />
4. Все теги и атрибуты должны писаться в нижнем регистре.

Скажу честно, я никогда не понимал, зачем люди пишут теги в верхнем регистре. На мой взгляд, это уродует код, и возникает ощущение, что его писали не отжимая «CAPSLOCK«. Но если в HTML — это дело вкуса, то в XHTML — это правило: писать только в нижнем регистре.

Как видите, разница только в синтаксисе. Есть также и другие мелкие различия, но мы о них говорить не будем. Другими словами, единственное преимущество XHTML — это более лёгкий парсинг документа. А также XHTML очень подходит любителям «чистого» кода. Больше никаких преимуществ нет. Все браузеры корректно отображают и HTML, и XHTML. Причём зачастую браузеры XHTML обрабатывают как HTML, поэтому для внешнего вида серьёзных различий в HTML и XHTML точно не будет.

Я для себя выбрал XHTML, потому что я очень люблю, когда код «чистый» и когда он легко разбирается на составные части (парсинг). Да, и вообще я привык к строгому синтаксису других языков, например, Java, поэтому всё равно я буду писать максимально валидно. А что выберите Вы — решать только Вам, а об отличиях HTML и XHTML Вы уже знаете.

  • Разница между HTML и XHTML Создано 25.01.2011 13:59:48
  • Разница между HTML и XHTML Михаил Русаков
Предыдущая статья Следующая статья

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:
    <a href=»https://myrusakov.ru» target=»_blank»><img src=»https://myrusakov.ru/images/button.gif» alt=»Как создать свой сайт» /></a>

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:
    <a href=»https://myrusakov.ru» target=»_blank»>Как создать свой сайт</a>

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):
    [URL=»https://myrusakov.ru»]Как создать свой сайт[/URL]

myrusakov.ru

XHTML | htmlbook.ru

Развитие HTML в определенном смысле зашло в тупик — новые теги уже не нужны, поскольку хватает существующих, к тому же акцент разработки веб-страниц сместился на стили, которые расширяют возможности по оформлению документов. Естественно, CSS никак не подменяет HTML, но зато позволяет использовать ограниченный набор тегов, а вид элементов, их положение и различные параметры, задавать через стили.

Определенным ограничением HTML является и то, что он относится к формальным языкам, в том смысле, что теги и их иерархическая структура жестко описаны в спецификации. Поэтому популярность набирает XML, с помощью которого можно создавать собственные теги и формировать их структуру. Разница между HTML и XML состоит не только в тегах, но и правилах написания кода. Браузер при работе с HTML «закрывает глаза» на разные мелкие огрехи и недочеты в структуре или тому, что не корректно указан атрибут. С XML такие фокусы не проходят, поэтому браузер выдаст ошибку о том, что документ неверно сформирован.

Чтобы научить разработчиков «правильному» мышлению, изменить их стиль написания кода, а также сократить разрыв между HTML и XML, и был разработан XHTML, как промежуточный этап между ними.

XHTML (EXtensible HyperText Markup Language, расширяемый язык разметки гипертекста) предназначен для замены HTML и считается его более строгой версией. Вообще, W3C определяет XHTML как последнюю версию HTML, которая постепенно его вытеснит. Так ли это будет обстоять на самом деле, покажет только время.

Если рассуждать о некотором идеальном коде веб-страницы, то его можно сравнить с программой, которая не будет скомпилирована до тех пор, пока все ошибки не исправлены. Браузер выступает в роли компилятора и не отображает документ, если он не соответствует спецификации. XHTML, сохраняя все особенности HTML, вносит более строгие правила создания страниц, чтобы приблизиться к «идеальному» коду. Это позволяет делать сайты независимыми от устройства отображения и браузера. Иными словами, сайт будет корректно показываться во всех современных браузерах и платформах вроде компьютеров, смартфонов, КПК, нетбуках и др.

На деле все обстоит более приземленно. Разработчики браузеров не могут позволить себе, чтобы их детище работало только с «правильным» кодом. А все из-за того, что большая часть сайтов в мире просто не будет отображаться в таком браузере. Виноваты в таком положении вещей и разработчики и пользователи. Первые не обеспечили должную поддержку спецификации в своих браузерах, а вторые не потрудились ей следовать.

По этим причинам XHTML 1.x является всего лишь подобием HTML, но с более строгим синтаксисом, а не тем перспективным языком разметки, на который обязательно стоит переходить из-за его уникальных возможностей.

htmlbook.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *