Чтение онлайн

на главную - закладки

Жанры

HTML, XHTML и CSS на 100%

Квинт Игорь

Шрифт:

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

3. Третий тип DTD определяет работу с фреймами, в остальном он соответствует переходным XHTML DTD.

В настоящее время актуальна версия 1.0 языка XHTML, но уже на подходе версия 1.1.

В основном создание документа XHTML 1.0

не отличается от создания документа HTML. Однако в синтаксисе и структуре документа имеются определенные отличия, которые обязательно должны быть учтены, если вы хотите добиться соответствия своей веб-страницы требованиям XHTML. Обсудим устройство документов XHTML 1.0 и их отличие от документов, подготовленных на основе языка HTML 4.01.

13.1. Структура XHTML-документов

Чтобы XHTML-документ полностью отвечал требованиям строгих правил XHTML DTD, ему нужно указать, какой набор XML DTD был использован при его создании, версию применяемого языка XML, а также пространство имен документа. Вся эта информация помещается в начало документа в виде объявлений. Рассмотрим эти три компонента по порядку.

В настоящее время существует две версии языка XML: 1.0 и 1.1. Их отличия в основном сводятся к более строгим требованиям к используемым в документах кодировкам символов, предъявляемым языком XML 1.1, что расширяет сферу применения соответствующих документов, например на мейнфреймах. Более широко применяется версия XML 1.0, поэтому использовать будем именно ее. Для объявления того, что вы используете в данном XHTML-документе язык XML версии 1.0, следует поместить в первой строке документа следующую строку:

<?xml version="1.0" encoding="UTF-8" ?>

В ней браузеру сообщается, что вы используете XML версии 1.0 и представление символов в кодировке Unicode с разрядностью 8.

Теперь объявим набор DTD языка разметки XHTML:

<!DOCTYPE html PUBLIC « //W3C//DTD XHTML 1.0 Strict//EN» «http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd»>

В вышеприведенной конструкции объявлено, что в данном документе корневым элементом является html, а для его разработки использован набор XHTML DTD с публичным именем «//W3C//DTD XHTML 1.0 Strict//EN». Если браузер сумеет найти эти DTD по публичному имени, он будет использовать их, иначе он может применить набор XML DTD, хранимый в файле, который указан в URL вслед за публичным именем. В данном случае это документ по адресуСлово «strict» в названии файла означает «строгий», так что в данном документе использован строгий тип XHTML DTD. Указанный в адресе файл xhtml1-strict.dtd хранит все правила DTD, написанные на языке XML. Описание языка XML выходит за рамки этой книги, ограничимся только замечанием, что для всех разработчиков, которые хотят работать с XHTML на профессиональном уровне, знание языка XML является обязательным.

Если же вы намерены использовать переходной тип XHTML-документов, добавьте такое объявление:

<!DOCTYPE html PUBLIC «//W3C//DTD XHTML 1.0 Transitional//EN» «http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd»>

Для фреймовой версии XHTML DTD объявление таково:

<!DOCTYPE html PUBLIC

«//W3C//DTD XHTML 1.0 Frameset//EN» «http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd»>

Итак, мы объявили версию XML и набор XHTML DTD для создаваемого XHTML-документа. Теперь зададимся вопросом: а что если мы используем переходные правила XHTML DTD, но нам требуется включить в свой документ некий фрагмент, содержащий разметку по правилам специально определенного набора DTD, например для воспроизведения нотной записи? Для этих целей в документах XHTML используется так называемое пространство имен.

Пространство имен – это список имен всех тегов и атрибутов, которые применяются в XHTML-документе, подчиняющемся определенному набору правил XML DTD. С этой целью в правилах XML DTD всегда задается пространство имен, уникальное для каждого конкретного набора DTD. Соответственно, в XHTML DTD также определено стандартное пространство имен, которое должно быть хотя бы раз явно объявлено в документе XHTML. Обычно это делается с помощью атрибута xmlns тега <html>:

<html xmlns="http://www.w3.org/TR/xhtml1">

Здесь задано пространство имен, хранимое в документе по адресугде находится официальная спецификация языка XHTML. Для использования в XHTML-документах нескольких DTD предусмотрена возможность прямого указания пространства имен, к которому принадлежит данный тег или атрибут разметки. Это делается с помощью атрибута xmlns, который можно поместить в открывающий тег любого элемента в документе, например, так:

<div xmlns="http://www.w3.org/1998/Math/MathML>у4/z</div">

В этом случае XHTML-совместимый браузер, обрабатывая документ, получит указание, что при воспроизведении содержимого данного тега <div> следует воспользоваться набором математических правил DTD, взяв их по указанному адресу http:// www.w3.org/1998/Math/MathML. Здесь хранится спецификация языка математической разметки MathML (Mathematical Markup Language). При этом запись y4/z будет воспроизведена браузером как математическое выражение деления двух переменных y4 и z, а не как содержимое тега <div>, определенного в общих XHTML DTD.

Как видите, ссылки на пространства имен достаточно объемны. Чтобы сократить их размер и упростить себе работу по составлению документа, можно использовать так называемые метки, вставляя их в определения пространства имен в начале документа:

<html xmlns="http://www.w3.org/TR/xhtml1" xmlns:math="http://www.w3.org/1998/Math/MathML">

После этого можно будет обращаться к данному пространству имен во всех тегах документа так:

<math:div>y4/z</div>

Здесь приведена сокращенная версия тега <div> из предыдущего примера.

Итак, сведем все воедино, запишем весь созданный XHTML-документ целиком (листинг 13.1).

Листинг 13.1. Образец XHTML-документа

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1 transitional.dtd">

Поделиться:
Популярные книги

Темная сторона души

Михалкова Елена Ивановна
2. Расследования Макара Илюшина и Сергея Бабкина
Детективы:
прочие детективы
9.33
рейтинг книги
Темная сторона души

Собрание пьес. Книга 1

Сологуб Фёдор Кузьмич
Драматургия:
драма
5.00
рейтинг книги
Собрание пьес. Книга 1

Swvswh40k

Кросскун / Krosskun
5.00
рейтинг книги
Swvswh40k

1115 вопросов священнику

раздел сайта Православие.Ru
Религия и эзотерика:
православие
христианство
религия
прочая религиозная литература
5.00
рейтинг книги
1115 вопросов священнику

Рыцарь Империи

Буревой Андрей
3. Одержимый
Фантастика:
фэнтези
9.39
рейтинг книги
Рыцарь Империи

Магия отступника

Хобб Робин
3. Сын солдата
Фантастика:
фэнтези
7.87
рейтинг книги
Магия отступника

Библия Раджниша. Том 1. Книга 1

Раджниш Бхагаван Шри
Религия и эзотерика:
самосовершенствование
эзотерика
7.00
рейтинг книги
Библия Раджниша. Том 1. Книга 1

Мадонна миндаля

Фьорато Марина
Любовные романы:
исторические любовные романы
5.50
рейтинг книги
Мадонна миндаля

Зеркало ее сновидений

Дональдсон Стивен Ридер
1. Нужды Морданта
Фантастика:
фэнтези
7.17
рейтинг книги
Зеркало ее сновидений

Каторга. Преступники

Дорошевич Влас Михайлович
1. Русская классика XX века
Проза:
русская классическая проза
6.25
рейтинг книги
Каторга. Преступники

Музыкант-2

Марченко Геннадий Борисович
5.00
рейтинг книги
Музыкант-2

"Кроваво-Красная" Армия. По чьей вине?

Бешанов Владимир Васильевич
Научно-образовательная:
история
6.67
рейтинг книги
Кроваво-Красная Армия. По чьей вине?

Судебные речи

Вышинский Андрей Януарьевич
Научно-образовательная:
политика
юриспруденция
5.00
рейтинг книги
Судебные речи

Годы странствий

Чулков Георгий Иванович
Документальная литература:
биографии и мемуары
6.25
рейтинг книги
Годы странствий