- XHTML
-
XHTML Расширение .xhtml, .xht,
.xml, .html, .htmMIME application/xhtml+xml
Разработан Опубликован Последний выпуск Тип формата Расширен из Стандарт(ы) 1.0 (Recommendation),
1.0 SE (Recommendation),
1.1 (Recommendation),
1.1 SE (Recommendation),
5 (Working Draft)HTML - HTML и HTML5
- Динамический HTML
- XHTML
- XHTML Mobile Profile и CHTML
- Canvas
- Кодировки символов
- Document Object Model
- Семейство шрифтов
- Редактор HTML
- Элементы HTML
- Мнемоники в HTML
- Фреймы HTML
- HTML5 audio и HTML5 video
- Скрипты в HTML
- Браузерный движок
- Quirks mode
- Таблицы стилей
- Каскадные таблицы стилей
- Unicode и HTML
- W3C и WHATWG
- Цвета HTML
- Web Storage
- WebGL
- Сравнение
- языков разметки документов
- браузеров
- браузерных движков для
- HTML
- HTML5
- HTML5 Canvas
- HTML5 Media
- XHTML (1.1)
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, должны замещаться < и & соответственно. По рекомендации 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>
). - Неправильное использование ссылок-мнемоник (например,
&
вместо&
) - Написание тегов и/или атрибутов прописными буквами (
<DIV STYLE="…">
вместо<div style="...">
). - Задание в теге
<!DOCTYPE …>
относительного пути к DTD-файлу ("DTD/xhtml11.dtd"
вместо"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"
).
Это неполный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.
Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.
См. также
Примечания
- ↑ Новость на сайте консорциума (англ.)
- ↑ Conformance Definition (англ.)
Ссылки
- Официальная страница языков разметки на сайте W3C (англ.)
- XHTML 1.0. Рекомендация W3C. (англ.)
- XHTML 1.1. Рекомендация W3C. (англ.)
- XHTML Basic 1.1. Рекомендация W3C. (англ.)
- XHTML 2.0. Отчет рабочей группы. (англ.)
- XHTML учебник с примерами и упражнениями (рус.)
- XHTML Basic. Перевод рекомендации W3C на русский язык.
- Введение в XHTML (рус.)
- Sending XHTML as text/html Considered Harmful (англ.)
- Разметка XHTML-страниц (англ.) — инструмент XSLT, использующий внешние словари, чтобы придать осмысленность веб-разметке.
Валидаторы
- Онлайн-валидатор HTML, XHTML, MathML, SVG, SMIL (англ.)
- Валидатор-корректор HTML Tidy (англ.)
- CSE HTML Validator (англ.)
Литература
- Эд Титтел, Джефф Ноубл 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
Языки разметки документов Офисных документов Compound Document Format · OOXML (SpreadsheetML, PresentationML, WordprocessingML) · ODF · UOF Общеизвестные HTML · XHTML · MathML · JSON · RTF · TeX · LaTeX Менее известные CML · C-HTML · ConTeXt · Crossmark · DITA · DocBook · eLML · EAD · Enriched text · FHTML · GML · GuideML · HDML · HyTime · HyperTeX · IPF · FictionBook · LilyPond · LinuxDoc · Lout · MIF · MAML · MEI · MusicXML · OMDoc · OpenMath · POD · RTML · RTML · RFT · S1000D · TEI · Texinfo · troff · Вики-текст · WML · WapTV · XAML · YAML · Z Format Стандарты Консорциума Всемирной паутины Рекомендации Canonical XML • CDF • CSS • DOM • Geolocation API • HTML • ITS • MathML • OWL • P3P • PLS • RDF (Schema) • SISR • SKOS • SMIL • SOAP • SRGS • SSML • SVG • SPARQL • Timed Text • VoiceXML • WSDL • XForms • XHTML • XHTML+RDFa • XInclude • XLink • XML (Base • Encryption • Events • Information Set • namespace • Schema • Signature) • XPath / 1.0 / 2.0 • XPointer • XProc • XQuery • XSL • XSL-FO • XSLT (элементы) • XUP
Примечания XAdES • XHTML+SMIL
Рабочие проекты CCXML • CURIE • HTML5 • InkML • RIF • SCXML • SMIL Timesheets • sXBL • WICD • XFDL • XFrames • XBL • XHTML+MathML+SVG • XMLHttpRequest
Guidelines Web Content Accessibility Guidelines
Initiative Multimodal Interaction Activity • Markup Validation Service • Web Accessibility Initiative
Deprecated Организации World Wide Web Foundation • SVG Working Group • WebOnt • Device Description Working Group • WHATWG
ПО Agora • Argo • Arena • Amaya • CERN httpd • Libwww • Line Mode Browser
Конференции IW3C2 • World Wide Web Conference • WWWC1
Веб и веб-сайты Глобально Локально Виды сайтов
и сервисовВиртуальный атлас • Баннерная сеть • Блог (платформа) • Видеохостинг • Вики (список движков • список сайтов) • Сайт-визитка • Вопрос-ответ • Закладки • Службы знакомств • Каталог ресурсов • Интернет-магазин • Микроблог • Тамблелог • Новостной сайт • Поисковая система (список) • Порносайт • Социальная сеть • BitTorrent-трекер • Файлообменник • Форум (Сервис • Имиджборд) • Фотохостинг • Чат
Создание и
обслуживаниеТипы макетов,
страниц, сайтовТехническое Веб-сервер (сравнение) • Браузер (список • сравнение) • CMF (список (англ.)) • CMS (список (англ.)) • HTTP (ответы • заголовки) • SPDY • CGI • HTML • XHTML • CSS • JavaScript • DHTML • DOM • XML • AJAX • JSON • Flash • RSS • Atom • Микроформат • favicon.ico • robots.txt • Sitemaps • Карта сайта • .htaccess
Маркетинг Социум и культура Категории:- Форматы файлов
- HTML
- XML
- Стандарты W3C
Wikimedia Foundation. 2010.