XHTML
XHTML (англ. Extensible Hypertext Markup Language — Расширяемый язык разметки гипертекста) — язык разметки веб-страниц, по возможностям сопоставимый с HTML, созданный на базе XML. Как и HTML, XHTML соответствует спецификации SGML, поскольку XML является её подмножеством. Вариант XHTML 1.1 одобрен в качестве Рекомендации Консорциума Всемирной паутины (W3C) 31 мая 2001 года.
Стандарт XHTML построен не как самодостаточное описание языка, а как перечень различий между HTML 4.01 и XHTML.
Различия между XHTML и HTML
- Все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например,
<img>
или<br>
) должны иметь на конце/
(например,<br />
). - Булевы атрибуты записываются в развёрнутой форме. Например, следует писать
<option selected="selected">
или<td nowrap="nowrap">
. - Имена тегов и атрибутов должны быть записаны строчными буквами (например,
<img alt="" />
вместо<IMG ALT="" />
). - XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в URL, должны замещаться < и & соответственно. По рекомендации W3C браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор.
- Кодировкой по умолчанию является UTF-8 (в отличие от HTML, где кодировкой по умолчанию является ISO 8859-1).
Для XHTML страниц рекомендуется задавать MIME-тип — application/xhtml+xml
, но это не является обязательным, более того — браузер Internet Explorer 8 и младшие версии, не смогут обрабатывать страницу, поэтому с XHTML 1.0 традиционно используется MIME-тип для HTML — text/html
.
Также стандарт рекомендует указание <?xml version="1.0" encoding="utf-8"?>
перед DTD, но это не обязательно, более того — браузер Internet Explorer воспринимает такое указание (как и любой другой текст перед <!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 — в основном используется в миниатюрных устройствах, таких как мобильные телефоны. Подразумевается, что он заменит WML и C-HTML.
- XHTML мобильного профиля (Mobile Profile): основанный на XHTML Basic, добавляет специфические элементы для мобильных телефонов.
- XHTML 2.0. Пока в разработке. Синтаксис еще больше приближен к синтаксису XML. Также является модульным языком.
Валидация 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.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>
). - Неправильное использование ссылок-мнемоник (например,
&
вместо&
) - Написание тегов и/или атрибутов прописными буквами (
<DIV STYLE="…">
вместо<div style="...">
). - Задание в теге
<!DOCTYPE …>
относительного пути к DTD-файлу, скопированного с сайта www.w3.org ("DTD/xhtml11.dtd"
вместо"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"
).
Это не полный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.
Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.
На сайте Консорциума Всемирной паутины также можно найти валидаторы для CSS, HTML-документов и др.
Окончание работ над XHTML 2
2 июля 2009 года Консорциум Всемирной паутины сообщил о прекращении работ над второй версией XHTML и переносе всех ресурсов в рабочую группу HTML 5.[2] Устав рабочей группы XHTML 2, истекающий 31 декабря, не будет продлён.[3] Для HTML 5 так же будет существовать XHTML-форма.
См. также
Ссылки
- Раздел языков разметки на сайте W3C(англ.)
- Спецификация XHTML 1.0(англ.)
- Спецификация XHTML 1.1(англ.)
- XHTML Basic 1.1(англ.)
- Рабочий проект XHTML 2.0(англ.)
- Русские переводы рекомендаций W3C по XHTML(рус.)
- Введение в XHTML(рус.)
- Sending XHTML as text/html Considered Harmful(англ.)
- Разметка XHTML-страниц(англ.) — инструмент XSLT, использующий внешние словари, чтобы придать осмысленность веб-разметке.
Валидаторы
- Онлайн-валидатор HTML, XHTML, MathML, SVG, SMIL(англ.)
- Валидатор-корректор HTML Tidy(англ.)
- CSE HTML Validator(англ.)
Литература
- Брайан Пфаффенбергер, Стивен Шафер, Чак Уайт, Билл Кароу 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
Примечания
- ↑ Conformance Definition(англ.)
- ↑ Новость на сайте консорциума(англ.)
- ↑ Устав рабочей группы XHTML 2(англ.)
Стандарты Консорциума Всемирной паутины |
|
---|---|
Рекомендации | CDF • CGI • CSS • DOM • HTML • LOGML • MathML • OWL • RDF • RDF Schema • SISR • SMIL • SOAP • SRGS • SSML • SVG • Timed Text • VoiceXML • WSDL • XForms • XHTML • XInclude • XML • XML Base • XML Events • XML Information Set • XML Schema • XPath • XPointer • XQuery • XSL • XSL-FO • XSLT • XLink |
Примечания | XHTML+SMIL |
Рабочие проекты | CCXML • CURIE • InkML • XFrames • XFDL • WICD • XHTML+MathML+SVG |
См. также | WHATWG |
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....