Любой XHTML-файл состоит из трех разделов — элемента <!DOCTYPE>, заголовка (<HEAD>) и тела документа (<BODY>). Последние два элемента перекочевали из HTML и ничем не отличаются от своего родоначальника (пример 2.1). Пример 2.1. Простейший XHTML-документ
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Этот раздел предназначен для заголовка страницы и технической информации. -->
</head>
<body>
<!-- А здесь надо размещать все, что хочется увидеть на странице. -->
</body>
</html>
Элемент <!DOCTYPE> сообщает браузеру о типе текущего документа и как его интерпретировать. Различают несколько версий и типов XHTML-документов, они приведены в табл. 2.1.
Табл. 2.1. Версии XHTML и допустимые типы документаВерсия XHTML Тип документа Описание
XHTML 1.0 Strict «Строгое» описание документа, включающее все правила.
XHTML 1.0 Transitional «Переходный» тип, более лояльно относящийся к коду документа.
XHTML 1.0 Frameset Устанавливается при использовании на странице фреймов.
XHTML 1.1 XHTML 1.1 Эта версия основана на XHTML 1.0 Strict, но понимается браузерами как XML-приложение. В первую очередь предназначено для работы с различными медиа-данными.
XHTML 1.0 Strict
Используется в том случае, если в документе идет четкое разделение оформления и содержания. При этом код веб-страницы содержит только теги разметки, а сам вид элементов задается через стили (пример 2.2).
Пример 2.2. Документ со строгой разметкой
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> ... </head>
<body> ... </body>
</html>
XHTML 1.0 Transitional Обычно применяется, когда правило разделения оформления и содержания выполняется не в полной мере. В этом случае допускается в коде документа использовать теги физического проектирования (например, тег <TT>) и лишь частично стили. В примере 2.3 показан вид тега <!DOCTYPE> для подобных документов.
Пример 2.3. «Переходный» документ
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> ... </head>
<body> ... </body>
</html>
XHTML 1.0 Frameset Применяется, когда окно браузера делится на два или более фрейма (пример 2.4).
Пример 2.4. Документ с фреймами
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> ... </head>
<frameset> ... </frameset>
</html>
Элемент <!DOCTYPE> хотя и обязателен, но не является непосредственной частью XHTML-документа, поэтому для него закрывающего тега не требуется.
XHTML 1.1
Является старшей версией «строгого» XHTML (пример 2.5).
Пример 2.5. XHTML 1.1
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> ... </head>
<body> ... </body>
</html>
Шаблон документа XHTML Strict Тег <HTML> является корневым для остальных элементов веб-страницы и располагается сразу после определения типа документа <!DOCTYPE>. Поскольку тип документа может быть любым, а не только тем, что приведен в табл. 2.1, то необходимо дать понять браузеру, что он имеет дело со спецификой XHTML. Для чего в тег <HTML> добавляется параметр xmlns.
Также в контейнере <HEAD> требуется наличие заголовка <TITLE>. Таким образом, минимальный XHTML-документ с метатегом, устанавливающим кодировку веб-страницы, показан в примере 2.6.
Пример 2.6. Шаблон XHTML-документа
Code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Новый документ</title>
</head>
<body>
</body>
</html>
В данном примере используется тип XHTML 1.0 Strict и кодировка Windows-1251.