XHTML

Автор работы: Пользователь скрыл имя, 16 Сентября 2009 в 18:46, Не определен

Описание работы

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

Файлы: 1 файл

XHTML.doc

— 166.00 Кб (Скачать файл)

Неправильно:

<img src="picture.gif" name="рис. 1" />

Правильно:

<img src="picture.gif" id="рис. 1" />

Примечание: Для взаимодействия со старыми браузерами в течение некоторого времени необходимо будет использовать оба атрибута name и id, с одинаковыми значениями атрибутов, например: <img src="picture.gif" id="рис. 1" name="рис. 1" />.

Важное  замечание о совместимости

Для совместимости XHTML с современными браузерами, необходимо добавить дополнительный пробел перед символом "/".

Атрибут lang

Атрибут lang применим почти к любому элементу XHTML. Он определяет язык содержимого внутри элемента.

Если в каком-то элементе используется атрибут lang, то необходимо добавить атрибут xml:lang, например: <div lang="fr" xml:lang="fr">Bonjour, madam!</div>.

Обязательные  элементы XHTML

Все документы XHTML должны иметь объявление DOCTYPE. Также должны присутствовать элементы html, head и body, а внутри элемента head должен присутствовать элемент title.

Шаблон минимального документа XHTML имеет следующий вид:

<!DOCTYPE Здесь  определяется тип документа>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Здесь  задается заголовок </title>

</head>

<body>

</body>

</html>

Примечание: Объявление DOCTYPE не является частью самого документа XHTML. Это объявление не является элементом XHTML и не должно иметь закрывающий тег.

Примечание: Атрибут xmlns в теге <html> является в XHTML обязательным. Однако программа проверки (валидатор) на сайте w3.org не высказывает претензий, когда этот атрибут отсутствует в документе XHTML. Это обусловлено тем, что атрибут "xmlns=http://www.w3.org/1999/xhtml" имеет фиксированное значение и будет добавлен в тег <html>, даже если он не был включен.

В следующем разделе  представлена дополнительная информация об определении типа документа XHTML.

---------------------------------------------------------------------------------------------------------------------

DTD XHTML

Стандарт XHTML определяет три определения типа документа (Document Type Definitions – DTD).

Наиболее распространенным является XHTML Transitional (Переходный).

Элемент <!DOCTYPE> является обязательным

Документ XHTML состоит  из трех основных частей:

Тип документа DOCTYPE

Заголовок (Head)

Тело (Body)

Базовая структура  документа имеет следующий вид:

<!DOCTYPE ...>

<html>

<head>

<title>... </title>

</head>

<body> ... </body>

</html>

Объявление DOCTYPE всегда должно присутствовать в первой строке документа XHTML.

Пример XHTML

Это простой (минимальный) документ XHTML:

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

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

<html>

<head>

<title>простой документ </title>

</head>

<body>

<p>простой  параграф </p>

</body>

</html>

Объявление DOCTYPE определяет тип документа:

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

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

Оставшаяся часть  документа выглядит как HTML:

<html>

<head>

<title>простой документ </title>

</head>

<body>

<p> простой  параграф </p>

</body>

</html>

Определения трех типов документов

  • DTD определяет  синтаксис Web-страницы на SGML.
  • DTD используется приложениями SGML, такими как HTML, для определения правил, которые применяют при разметке документов определенного типа, включая множество объявлений элементов и сущностей.
  • XHTML задан в определении типа документа SGML или 'DTD'.
  • DTD XHTML описывает точным, понятным для компьютера языком допустимый синтаксис и грамматику разметки XHTML.

В настоящее время  имеется три типа документов XHTML:

  • STRICT
  • TRANSITIONAL
  • FRAMESET

XHTML 1.0 определяет  три типа документов XML, которые  соответствуют трем DTD: Strict, Transitional, и Frameset.

XHTML 1.0 Strict

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

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

Это определение 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">

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

XHTML 1.0 Frameset

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"

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

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

Как использовать XHTML

Преобразование  сайта на XHTML

Чтобы преобразовать Web-сайт с языка HTML на XHTML, необходимо знать правила синтаксиса XHTML, которые  были рассмотрены выше. Затем необходимо выполнить следующие действия (в  указанном порядке):

Добавить  определение DOCTYPE

В качестве первой строки каждой страницы добавляют следующее  объявление DOCTYPE:

<!DOCTYPE html PUBLIC

"-//W3C//DTD XHTML 1.0 Transitional//EN"

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

Лучше использовать сначала переходное определение DTD (Transitional). Можно выбрать и строгое определение DTD (Strict), но оно немного слишком "строгое" на начальном этапе, и ему труднее соответствовать.

Замечание о DOCTYPE

Web-cтраницы должны  иметь объявление DOCTYPE, если желательно, чтобы они были определены как правильные согласно XHTML.

Надо помнить, однако, что более новые браузеры (такие  как Internet Explorer 6) могут обрабатывать документ по-разному, в зависимости  от объявления <!DOCTYPE>. Если браузер читает документ с DOCTYPE, то он может интерпретировать документ как "правильный". Плохо сформированный XHTML может выводиться иначе, чем при отсутствии DOCTYPE.

Имена тегов и атрибутов  записать в нижнем регистре

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

Все атрибуты заключают  в кавычки

Так как рекомендация W3C для XTML 1.0 говорит, что значения всех атрибутов должны быть заключены  в кавычки, то необходимо проверить  все Web-страницы, чтобы значения всех атрибутов были правильно заключены  в кавычки. Это трудоемкая работа, поэтому рекомендуется в будущем никогда не забывать использовать кавычки для значений атрибутов.

Пустые  теги: <hr> , <br> и <img>

В XHTML пустые теги не разрешены. Теги <hr> и <br> должны быть заменены соответственно на <hr /> и <br />.

Это создает проблему с браузером Netscape, который неправильно интерпретирует тег <br/>. Но к счастью, по неизвестной причине, замена его на <br /> прекрасно работает. В этом случае также необходимо выполнить глобальный поиск и замену соответствующих тегов.

Некоторые другие теги (такие как тег <img>) страдают от такой же проблемы. В данном случае можно не использовать тег замыкания </img>, а добавить /> в конце тега.

Проверка (валидация) Web-сайта

После выполнения всех преобразований все имеющиеся страницы проверяются согласно официальному DTD W3C с помощью следующей ссылки на XHTML Validator (http://validator.w3.org/check/referer). Возможные не выявленные на начальном этапе ошибки надо будет отредактировать вручную. Наиболее распространенной ошибкой бывает отсутствие в списках тегов замыкающего </li>.

Имеются ли какие-либо специальные инструментальные средства для преобразования? Да, можно использовать утилиту TIDY.

Бесплатная утилита  Дейва Рагетта HTML TIDY (http://www.w3.org/People/Raggett/tidy/) предназначена для проверки кода HTML. Она также отлично справляется с трудночитаемыми разметками документов, созданными специальными редакторами HTML и инструментальными средствами конвертации, и может помочь определить места кода, требующие дополнительного внимания, чтобы сделать Web-страницы более доступными для людей с физическими недостатками.

Проверка XHTML

Документ XHTML проверяется согласно Определению типа документа.

Проверка XHTML в соответствии с DTD

Документ XHTML проверяют  на соответствие определению типа документа (DTD). Прежде чем можно будет проверить  файл XHTML, необходимо добавить в качестве первой строки правильный DTD.

Strict DTD содержит элементы и атрибуты, которые не были исключены и не связаны с фреймами:

!DOCTYPE html PUBLIC

"-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" 

Transitional DTD содержит все из Strict DTD плюс исключенные элементы и атрибуты: 

!DOCTYPE html PUBLIC

"-//W3C//DTD XHTML 1.0 Transitional//EN"

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

Frameset DTD содержит все из Transitional DTD плюс фреймы: 

!DOCTYPE html PUBLIC

"-//W3C//DTD XHTML 1.0 Frameset//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"

Простой документ XHTML имеет следующий вид:

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

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

<html>

<head>

<title>простой документ </title>

</head>

<body>

<p>простой  параграф </p>

</body>

</html>

Модуляризация XHTML

Модель модуляризации XHTML определяет модули XHTML.

Зачем нужна модуляризация XHTML?

Информация о работе XHTML