Что такое xhtml – Что такое XHTML

Содержание

XHTML — это… Что такое XHTML?

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, должны замещаться &lt; и &amp; соответственно. По рекомендации 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>).
  • Неправильное использование ссылок-мнемоник (например, & вместо &amp;)
  • Написание тегов и/или атрибутов прописными буквами (<DIV> вместо <div>).
  • Задание в теге <!DOCTYPE …> относительного пути к DTD-файлу ("DTD/xhtml11.dtd" вместо "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd").

Это неполный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.

Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.

См. также

Примечания

Ссылки

Валидаторы

Литература

  • Эд Титтел, Джефф Ноубл 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

dic.academic.ru

Xhtml — это… Что такое Xhtml?

XHTML (англ. Extensible Hypertext Markup Language — Расширяемый язык разметки гипертекста) — язык разметки веб-страниц, по возможностям сопоставимый с XML. Как и HTML, XHTML соответствует спецификации XML является её подмножеством. Вариант XHTML 1.1 одобрен в качестве Рекомендации Консорциума Всемирной паутины (W3C) 31 мая 2001 года.

Преимущества

  • Для XHTML можно применять множество технологий, разработанных для XML. Например, XPath.
  • Анализ XHTML проще и быстрее, чем HTML. Поскольку синтаксис SGML, обработка XHTML возможна даже на мобильных телефонах с малыми ресурсами.

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

  • Все элементы должны быть закрыты. Теги, которые не имеют закрывающего тега (например, <img> или <br>) должны иметь на конце / (например, <br />).
  • Булевы атрибуты записываются в развёрнутой форме. Например, следует писать <option selected="selected"> или <td nowrap="nowrap">.
  • Имена тегов и атрибутов должны быть записаны строчными буквами (например, <img alt="" /> вместо <IMG ALT="" />).
  • XHTML гораздо строже относится к ошибкам в коде; < и & везде, даже в W3C браузеры, встретив ошибку в XHTML, должны сообщить о ней и не обрабатывать документ. Для HTML браузеры должны были попытаться понять, что хотел сказать автор.
  • Кодировкой по умолчанию является ISO 8859-1).

Для XHTML страниц рекомендуется задавать MIME-тип — application/xhtml+xml, но это не является обязательным, более того — браузер Internet Explorer 8 и младшие версии, не смогут обрабатывать страницу, поэтому с XHTML 1.0 традиционно используется MIME-тип для text/html.

Также стандарт рекомендует указание <?xml version="1.0" encoding="utf-8"?> перед <!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 — в основном используется в миниатюрных устройствах, таких как мобильные телефоны. Подразумевается, что он заменит C-HTML.
  • XHTML мобильного профиля (Mobile Profile): основанный на XHTML Basic, добавляет специфические элементы для мобильных телефонов.
  • XHTML 2.0. Пока в разработке. Синтаксис еще больше приближен к синтаксису XML. Также является модульным языком.

Валидация XHTML документов

Валидным (т. е. отвечающим всем правилам) XHTML-документом считается документ, удовлетворяющий технической спецификации. В идеале, все браузеры должны следовать веб-стандартам и, в соответствии с ними, валидные документы должны отображаться во всех браузерах на всех платформах. Валидация XHTML-документа рекомендована даже несмотря на то, что она не гарантирует кросс-браузерности. Документ может быть проверен на соответствие спецификации с помощью онлайновой Службы валидации разметки W3C. Валидация обнаружит и разъяснит ошибки в 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>).
  • Неправильное использование ссылок-мнемоник (например, & вместо &amp;)
  • Написание тегов и/или атрибутов прописными буквами (<DIV> вместо <div>).
  • Задание в теге <!DOCTYPE …> относительного пути к DTD-файлу, скопированного с сайта www.w3.org ("DTD/xhtml11.dtd" вместо "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd").

Это не полный список, но дающий общее представление о часто допускаемых ошибках при составлении XHTML-документов.

Валидный XHTML-документ можно снабжать специальным баннером W3C, подтверждающим валидность XHTML-разметки.

На сайте Консорциума Всемирной паутины также можно найти валидаторы для CSS,

См. также

Ссылки

Валидаторы

Литература

  • Брайан Пфаффенбергер, Стивен Шафер, Чак Уайт, Билл Кароу 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

Примечания

Wikimedia Foundation. 2010.

dic.academic.ru

Что такое XHTML ?

XHTML Расшифровывается как ExtensibleHypertext Markup Language и на русском  — Расширяемый язык разметки гипертекста. Обратите внимание не расширенный, а расширяемый. Это значит, что данный язык

 пополняется (расширяется) до сих пор. Так что такое XHTML ? Основным отличием XHTML от того же HTML является способ обработки документа (интернет-странички). Стоит ввести еще одно определение. Парсер — программа или часть программы, которая выполняет синтаксический анализ. Также его еще называют синтаксический анализатор. Если еще проще, то данная программа выполняет анализ всего строения страницы, всего кода страницы. В HTML при нахождении ошибки, во время анализа она исправлялась, что требовало дополнительного времени — браузеру нужно было понять, что автор (разработчик) хотел написать. В XHTML эти ошибки уже не исправлялись. Например, при ошибке в каком-либо теге, он просто выводился с остальным текстом.

Еще одно отличие заключается в том, что все элементы должны быть закрыты, а одиночные теги должны после символов иметь знак /, например: <br />. Про тэги я напишу отдельную большую статью, также напишу про каждый тэг отдельно. Кодировка в XHTML — UTF-8 (наиболее распространенная сейчас), в HTML же использовалась   ISO 8859-1.

  • первая распространенная ошибка — указание в теге <!DOCTYPE …> относительного пути к DTD-файлу, скопированного с сайта www.w3.org, "DTD/xhtml11.dtd". Вместо этого нужно писать полный путь "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd".
  • нарушение принципа закрытия всех без исключения элементов. Язык XHTML, в отличие от того же  HTML, обязывает закрывать все элементы, в том числе не имеющих  тега закрытия, как, например, <br />.
  • Недопустимо отсутствие кавычек при описании значений атрибутов . Например конструкция <a href="http://proektsmr.ru/">  правильная, а  соответственно  конструкция <a href=http://proektsmr.ru/> недопустима в xhtml.
  • в xhtml, для размещения текста  в теге <body> должен быть сначала задан блочный элемент, внутрь которого и помещают сам текст, таких требований HTML не предъявляет
  • блочные  элементы, например <div> или <p> не могут быть вложены внутрь (внутри строчных) элементов <a><span><em> и т.п. XHTML здесь суров.
  • при формировании кода в  стандарте XHTML  нужно быть крайне аккуратным с  вложением элементов в конструкциях вида <strong> <em> </strong> </em>). XHTML ,  в отличии от HTML, более требователен к соблюдению правил.
  • XHTML требует обозначения символов согласно таблице символов. Из этого вытекает распространена ошибка. При использование спецсимволов в XHTML, а точнее неправильная реализация ссылок-мнемоник. Например символ двойной кавычки " нужно реализовывать согласно таблице так   &quot;
  • Нельзя использовать прописные буквы в описании тегов и атрибутов. Возьмем например тег <span>. <SPAN> - недопустимая конструкция. Возможно только строчное написание <span>.
  • В XHTML нет атрибута alt для изображений. Вот нету, и все тут.

Что такое Модуляризация XHTML?

Модуляризация XHTML это разделение XHTML 1.0, относительно HTML 4, на коллекцию абстрактных модулей, которые предоставляют специфические типы функциональности. Эти абстрактные модули реализованы в данной спецификации с использованием языка XML Document Type Definition/Определения Типа Документа, но ожидается появление реализации с использованием Схемы XML.
Правила определения абстрактных модулей и реализации их с использованием ОТД XML также определены в данном документе.

xhtml

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

Для чего нужна Модуляризация XHTML?

Модуляризация XHTML — это задача специфицирования правильно определённых наборов элементов XHTML, которые (наборы) могут комбинироваться и расширяться авторами документов, создателями типов документов, другими спецификациями стандартов XML и дизайнерами приложений и продуктов  с целью дать техническую возможность разработчикам содержимого доставлять это содержимое на большое количество разнообразных платформ.

За последние два года многие специализированные рынки приняли HTML в качестве языка содержимого. Происходит быстрое продвижение в направлении использования HTML на большом количестве новых компьютерных платформ.
В настоящее время наблюдается активность в продвижении HTML на мобильные устройства (наручные компьютеры, портативные телефоны и т.п.), телевизионные устройства (цифровые телевизоры, Web-браузеры на базе TV и т.п.) и приборы (устройства с фиксированными функциями). Каждое из этих устройств имеет свои особые требования и ограничения.

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

xhtml

Эти модули служат «точками соответствия» для сообщества содержимого. Сообщество содержимого может теперь иметь установленную базу, поддерживающую определённые коллекции модулей, вместо того, чтобы беспокоиться об установленной базе, которая поддерживает то или иное изменение элементов XHTML. Использование стандартов является критичным для того, чтобы модуляризованный XHTML имел успех повсюду. Для разработчиков содержимого экономически нереально подгонять содержимое к каждому изменению элементов XHTML. Путём спецификации стандарта, любой процесс программы может автономно создавать содержимое для устройства, или устройство может автоматически загрузить программу, необходимую для работы модуля.

Модуляризация позволяет также расширять возможности представления XHTML  путём использования расширяемости XML без нарушения стандарта XHTML. Такой способ разработки даёт стабильную и реальную основу для разработчиков содержимого и издателей при обслуживании быстро множащихся технологических изменений на Web.

Абстрактные модули

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

Реализации модулей

Реализация модуля состоит из набора типов элементов, набора объявлений списка атрибутов и набора объявлений моделей содержимого, где любой из этих трёх наборов может быть пустым. Объявление списка атрибутов в модуле может модифицировать тип элемента вне типов элементов, определённых в модуле, а объявление модели содержимого может модифицировать тип элемента вне набора типов элементов модуля.

Одним из механизмов реализации являются ОТД XML. ОТД XML это способ описания структуры класса документов XML, в целом известного как тип документа XML.
ОТД XML описаны в Рекомендациях XML 1.0 [XML].
Другим механизмом реализации является Схема XML [XMLSCHEMA].

Гибридные типы документов

Гибридный тип документа это тип документа, составленный из коллекции ОТД XML или Модулей ОТД. Основным назначением Каркаса Модуляризации, описанного в данном документе, является: дать автору ОТД возможность сочетать элементы из нескольких абстрактных модулей в гибридный тип документа, разрабатывать документы относительно этого гибридного типа документов и легализовать эти документы относительно ассоциированного определения гибридного типа документа.

xhtml

Одним из самых важных преимуществ XML по сравнению с SGML является то, что XML уменьшает препятствия на пути к стандартизации наборов элементов, что позволяет сообществам обмениваться данными в подходящем формате.
В то же время, относительно статичная природа HTML как языка содержимого Web означает, что любой член этих сообществ раньше имел мало надежд на то, что его типы документов XML могут быть широко приняты в качестве стандартов Web.
Каркас Модуляризации даёт возможность динамически сочетать эти разнообразные типы документов в типах документов семейства XHTML, устраняя в дальнейшем препятствия на пути включения этих зависящих от специфики домена словарей в документы XHTML.

Легализация

Использование правильно сформированных, но не легализованных документов, является важным преимуществом XML. В процессе разработки типа документа, однако, важно дополнительное преимущество, предоставляемое легализующим разборщиком при проверке ошибок. Один и тот же оператор применяется к типам документов XHTML с элементами из разных абстрактных модулей.

Документ является объектом особого типа документа, определённого в ОТД, идентифицированном в прологе документа. Легализация документа это процесс проверки того, выполняет ли документ правила определения типа документа.

Один документ может состоять из нескольких фрагментов. Легализация только этих фрагментов, где каждый фрагмент имеет отличный от других тип документа, находится вне специфики данной работы — поскольку это потребует технологий, ещё не разработанных.

Тем не менее, Каркас Модуляризации даёт возможность интегрировать несколько определений типов документов и формировать новый тип документа (напр., SVG, интегрированный в XHTML). Определение нового типа документов может использоваться для нормальной легализации XML 1.0.

Модель форматирования

Предыдущие версии HTML пытались определить части такой модели, которые требовались от пользовательского агента (ПА) для использования при форматировании документа. С появлением HTML 4, W3C начал процесс отделения представления от структуры. XHTML 1.0 поддерживает это разделение, и данный документ продолжает движение от HTML и его потомков в этом направлении. Соответственно, данный документ не выдвигает никаких требований к модели форматирования, ассоциированной с представлением документов, размеченных с помощью типов документов Семейства XHTML.

xhtml

Наоборот, данный документ рекомендует, чтобы авторы содержимого полагались на механизмы определения стилей, такие как CSS, при определении модели форматирования для своего содержимого.
Если ПА поддерживают механизмы стилей, то документы будут сформатированы так, как ожидается.
Если ПА не поддерживают механизмы стилей, то документы будут сформатированы так,  как определяет сам ПА. Это позволяет ПАгентам Семейства XHTML поддерживать сложные (так и просится — навороченные; А.Р.) модели форматирования на тех устройствах, где это возможно, и изменять  модели форматирования на тех устройствах, где это допустимо

proektsmr.ru

XHTML 2 против HTML 5 / Habr

Вернемся в прошлое на десять с небольшим лет, в 18 декабря 1997. Internet Explorer 4 был выпущен 3 месяца назад, The Mozilla Foundation еще не сформирована и до выхода Firefox еще далеко. Здесь нет XMLHttpRequest, нет даже XML. В этот день, больше десятилетия назад, HTML 4.0 был опубликован как рекомендация W3C.

Он и стал базой, на основе которой были разработаны современные web-стандарты. Конечно, были и усовершенствования. В 2000 году как официальная рекомендация был принят XHTML 1.0, а CSS 2 был реализован большинством производителей браузеров. Но основа Web – костяк, на котором построен каждый сайт, от простых визиток до комплексных приложений – по существу осталась неизменной.

По крайней мере, до сегодняшнего дня. После долгого затишья, кажется, уклад вещей в W3C меняется – в разработке находятся две конкурирующие спецификации, призванные заменить устаревшие стандарты HTML 4.x и XHTML 1.x. Обе инициативы работают под эгидой W3C (пусть так было и не всегда) и обе, по моему мнению, значительно превосходят текущую подборку языков web-разметки. Это HTML 5 и XHTML 2.0. И если вы читаете эту статью, скорее всего, в течение нескольких следующих лет вам придется работать с одной (или обеими) из них.


Работа над XHTML 2.0 началась вскоре после публикации XHTML 1.1 в качестве рекомендации в 2001 году. Первый черновой вариант XHTML 2.0 был опубликован в 2002 г., но значительная часть документа была в ненормативном и незавершенном состоянии (а кое-что осталось до сих пор). К 2004 году у некоторых видных деятелей отрасли – разработчиков браузеров, дизайнеров, web-разработчиков и владельцев контента – возросло недовольство дирекцией рабочей группы XHTML 2.0. Ссылаясь на закрытый характер работы W3C, они решили основать и разрабатывать свой собственный стандарт.

Итак, в 2004 г. была сформирована независимая коалиция, названная WHATWG (Web Hypertext Application Technology Working Group). Группа начала работу над спецификацией, названной Web Applications 1.0. В апреле 2007 года W3C проголосовало в пользу предложения рассмотреть спецификацию группы. Члены WHATWG начали работать в рамках W3C как группа разработчиков HTML и продолжили работу над своим проектом, который был переименован в HTML 5. Таким образом, черновик HTML 5 должен однажды стать рекомендацией W3C наряду с XHTML 2.0 (хотя этот день еще очень далек, и W3C уже пропустил несколько ключевых этапов проекта).

XHTML 2.0 полностью основан на XML, разработчики отказались от наследства SGML и синтаксических особенностей, присутствующих в текущей web-разметке. Он позиционируется как «язык общего назначения», с минимальным функционалом по умолчанию, который легко расширить, используя CSS или другие технологии (XForms, XML Events, и т.д.). Этот модульный механизм позволяет группе разработчиков XHTML 2 сосредоточить свое внимание на общей разметке документа, пока остальные разрабатывают механизмы представления, интерактивности, построения документа и т.д.

Первым приоритетом для рабочей группы XHTML 2 является дальнейшее отделение контента и структуры документа от его представления. Другими целями являются повышенное удобство и доступность, улучшенную интернационализация, большая независимость от устройств, меньшее количество скриптов и интеграция с Semantic Web. Разработчики были меньше заинтересованы в обратной совместимости, чем их предшественники (и группа разработчиков HTML), что привело к удалению некоторого синтаксического багажа, существовавшего в ранних воплощениях HTML. Результатом стал более чистый и сжатый язык, исправляющий многие старые недочеты Web-разметки.

В то время как концепция XHTML 2.0 предназначена быть революционной, группа разработчиков HTML выбирает прагматичный подход и создает HTML 5, как эволюционировавшую технологию. Получается, что HTML 5 является шагом вперед, но по-прежнему большей частью совместим с текущими стандартами HTML 4/XHTML 1. Однако HTML 5 предлагает множество изменений и расширений для HTML 4/XHTML 1, указывающих на многие недочеты своих предыдущих спецификаций.

В спецификации HTML 5 речь идет об отходе HTML от разметки документа и внедрении его в языки для создания web-приложений. С этой целью основное внимание концентрируется на создании более надежного и функционального клиентского окружения, предоставляющего различные API для разработки web-приложений. Среди прочего, спецификация предусматривает то, что реализации должны предоставить на стороне клиента постоянные хранилища данных (как вида ключ/значение, так и SQL-базы данных), API для воспроизведения аудио и видео, 2D-рисования посредством элемента canvas, обмен сообщениями между документами, отправляемые сервером события и сетевые API.

HTML 5 поддерживает SGML-подобный синтаксис, совместимый с текущими спецификациями HTML (хотя некоторые наиболее эзотерические черты SGML больше не поддерживаются). В спецификацию также включена вторичная «XML-сериализация», позволяющая разработчикам использовать правильные XML-документы. Путем сохранения SGML-подобной сериализации группа разработчиков HTML 5 достигла баланса между прагматизмом и прогрессом: разработчики могут выбирать между разметкой с использованием HTML-сериализации (которая больше похожа на HTML 4.x) или XML-сериализации (больше похожа на XHTML 1.x).

Никого не удивит, что обе группы разработчиков предлагают ряд сходных возможностей. Они указывают на известные «больные места» web-разработки и будут желанным дополнением в новом поколении языков разметки.

Удаление элементов представления

Ряд элементов будут удалены в XHTML 2 и HTML 5, так как они отвечают только за представление документа. Считается, что представление должно управляться посредством таблиц стилей.

Документы XHTML 2 и HTML 5 не могут содержать следующих элементов: basefont, big, font, s, strike, tt и u. XHTML 2.0 также удаляет элементы small, b, i и hr, а HTML 5 переопределяет их другим значением (отвечающим не за представление). В XHTML 2.0 элемент hr заменяется элементом separator дабы уменьшить путаницу (элемент hr предназначен для создания горизонтальных разделителей, но вовсе не обязательно используется для этого).

Списки навигации

Списки навигации были введены как в XHTML 2.0, так и HTML 5. В XHTML 2.0 они определяются новым элементом nl (Navigation List). Сам список должен начинаться дочерним элементом label, определяющим заголовок списка. После него может идти один или несколько элементов li, используемых для разметки ссылок. Также новинкой в XHTML 2.0 является возможность создания ссылки с любого элемента, используя для него атрибут href. Комбинация этих методов позволяет создать простую, легкую разметку меню:

<nl>
    <label>Category</label>
    <li href="/">All</li>
    <li href="/news">News</li>
    <li href="/videos">Videos</li>
    <li href="/images">Images</li>
</nl>

В HTML 5 для этих целей был введен элемент nav. К сожалению, nav не является списочным элементом, поэтому не может содержать дочерних элементов li для логической организации ссылок (возможно, будет разработана новая идиома). И так как для создания ссылок в HTML 5 остаются необходимыми элементы a, разметка навигации не очень элегантна:

<nav>
    <h2>Category</h2>
    <ul>
        <li><a href="/">All</a></li>
        <li><a href="/news">News</a></li>
        <li><a href="/videos">Videos</a></li>
        <li><a href="/images">Images</a></li>
    </ul>
</nav>

Улучшенные формы

Обе спецификации содержат новые возможности для создания более последовательных форм с применением меньшего количества скриптов. В XHTML 2.0 стандарт HTML-форм был полностью удален в пользу более обширного стандарта XForms. Группа разработчиков XHTML 2.0 не контролирует эту технологию, а только ссылается на нее в спецификации. Для упрощения повторного использования в XForms собираемые данные отделены от разметки элементов управления. Это мощный язык, но его полное описание выходит за рамки этой статьи. Достаточно сказать, что даже малые знания этой технологии значительно повысят скорость разработки.

HTML 5 сохраняет привычные HTML-формы, но добавляет некоторые типы данных для упрощения разработки и повышения удобства для пользователя. Добавлено несколько новых типов элемента input для email-адресов, URL, даты и времени и числовых данных. Это позволит браузерам создавать более удобный пользовательский интерфейс (например, диалоги для выбора даты и времени), интегрироваться с другими приложениями (выбор адресов из Outlook или Адресной Книги, например) и проверять введенные пользователем данные перед отправкой на сервер (сокращение JavaScript-проверок на стороне клиента).

Семантическая разметка

Обе спецификации охватывают приближающийся Semantic Web, позволяя разработчикам внедрять в документы более богатые метаданные. Как и с формами, группа разработчиков XHTML2 использует более сложную технологию, в то время как разработчики HTML 5 пошли по более простому пути.

В XHTML 2.0 метаданные могут быть внедрены при использовании нескольких новых атрибутов из Модуля Метаинформационных Атрибутов (Metainformation Attributes Module). В частности, новый глобальный атрибут role предназначен для описания значения данного элемента в контексте документа. Также используется технология «Внедрения структурированных данных в web-страницы» (Embedding Structured Data in Web Pages), для этого группа использует существующие стандарты, ссылаясь на RDF. Эта технология является чрезвычайно мощной, но также и сложной.

Группа разработчиков HTML выбрала подход, который очень поход на микроформаты – перегрузка атрибута class преопределенным набором классов, представляющих различные типы данных. На данный момент в спецификации имеется семь зарезервированных классов: copyright, error, example, issue, note, search и warning. Хотя такой метод может казаться не очень надежным, маловероятно, что в разных браузерах эти элементы будут отображаться по-разному. Имена классов достаточно конкретны, поэтому есть о чем побеспокоиться: элемент с классом copyright будет отображаться как авторские права, независимо от того, знал разработчик о зарезервированных классах или нет.

Ниже описаны некоторые возможности HTML 5, не имеющие аналогов в XHTML 2.0

API для web-приложений

HTML 5 вводит ряд API, значительно улучшающих оболочку для разработки на стороне клиента. Они делают из HTML 5 стек технологий для web-приложений, а не просто язык для разметки документов. Стоит отметить, что детали этих API сейчас проработаны группой разработчиков Web API (Web API working group), поэтому могут быть приняты как с остальной частью HTML 5, так и самостоятельно. Новыми API и соответствующими элементами являются:

  • API 2D-рисования посредством элемента canvas
  • API воспроизведения аудио и видео, поддерживающие возможность предоставлять браузеру несколько форматов, которые могут быть использованы в новых элементах audio и video.
  • Постоянные хранилища данных на стороне клиента, как вида ключ/значение, так и SQL-базы данных.
  • Оффлайн-API для web-приложений (схожее с Google Gears).
  • API, позволяющее web-приложениям сопоставлять себя с различными протоколов или MIME-типами.
  • API редактирования, которое может быть использовано в комбинации с глобальным атрибутом contenteditable.
  • Drag&Drop API, которое может быть использовано в комбинации с атрибутом draggable
  • Сетевое API, позволяющее web-приложениям использовать протокол TCP.
  • API, отражающее историю переходов браузера, позволяющее web-приложениям добавлять в нее записи, что позволит адекватно работать при нажатии кнопки «Назад» браузера.
  • API обмена сообщениями меду документами.
  • Отправляемые сервером события в комбинации с новым элементом event-source.

Новые элементы

В HTML 5 вводится ряд новых возможностей, которых нет в XHTML 2.0:

  • figure представляет изображение или график с заголовком. Вложенный элемент legend отображает заголовок, а обычный элемент img используется для изображения
  • m отображает текст, выделенный каким-либо образом. Может быть использован для подсветки слов при выдаче результатов поиска, к примеру.
  • time отображает дату и время
  • meter отображает измерения или величины
  • datagrid отображает интерактивное дерево данных или табличные данные
  • command отображает команду, которую пользователь может выполнить
  • event-source используется для «ловли» посылаемых сервером событий
  • output отображает определенный тип вывода, такой как результат вычисления скрипта
  • progress – отображает выполнение процесса, такого, как загрузка или выполнение серии трудоемких вычислений.

В дополнение, некоторые новые элементы помогают семантично разметить части документа. Их названия говорят сами за себя: section, article, header, footer и aside. А новый элемент dialog предназначен для отображения сообщений с использованием дочерних элементов: dt — для имени отправителя, а dd — для текста сообщения.

Отслеживание пользователей оповещением (pinging) URI

Новый атрибут ping может использоваться в элементах a и area для отслеживания пользователей. Этот атрибут позволяет указать разделенный пробелами список URI, которые должны быть оповещены при переходе по ссылке, это позволяет уйти от использования переадресации или JavaScript’ов.

Новые возможности, которые доступны только в XHTML 2.0

Любой элемент может быть ссылкой

В XHTML 2.0 атрибут href можно указать в любом элементе, тем самым превратив его в ссылку. С этим изменением элемент a больше не является необходимым, но он сохраняется.

Любой элемент может быть изображением (или другим ресурсом)

В XHML 2.0 элемент img был удален. Но не волнуйтесь – теперь любой элемент может быть изображением. Идея в том, что все изображения имеют длинное описание, которое эквивалентно самому изображению. Добавлением атрибута src к любому элементу мы говорим браузеру загрузить указанный ресурс и разместить его на месте элемента. Если по какой-либо причине ресурс недоступен, будет отображено содержание элемента. Это позволяет разработчикам предоставлять несколько эквивалентных ресурсов, используя разные форматы файлов и представления, путем вложения элементов друг в друга.

Строки заменяют br

Почтенный элемент br, использующийся для вставки перехода на новую строку, также был удален в XHTML 2.0. Для его замены введен новый элемент l. Он представляет строку текста, и работает как span, после которого стоит br по правилам текущей разметки.

Новая структура заголовков

Новые элементы h и section были введены для замены пронумерованных элементов h2h6. Цель этого – стремление передать иерархическую структуру документа. Текущие нумерованные заголовки линейны, не вкладываются друг в друга. При вложении элементов section и h в родительские section структура документа будет ясна.

Новые элементы

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

  • blockcode представляет компьютерный код
  • di представляет группу связанных терминов и определений в dl (definition list). Это удобно для слов с различными значениями или различным произношением.
  • handler представляет скриптовый обработчик событий с атрибутом type, который указывает язык обработчика. Если браузер его не понимает, обрабатываются потомки элемента-обработчика (иначе они игнорируются). Таким образом, обработчики могут вкладываться друг в друга для предоставления реализации на нескольких языках.

Оба предложения выглядят обещающе и содержат множество новых возможностей, указывающих на обычные проблемы web-разработки. Но ни одна спецификация является официальной рекомендацией, и так, скорее всего, будет в течение некоторого времени.

Несмотря на позднее начало, группа разработчиков HTML 5 имеет большую индустриальную поддержку и прошла больший путь в рекомендационном процессе. Их цель состоит в том, чтобы иметь полную спецификацию, с множеством взаимодействующих реализаций не позднее 2010 года (как я уже говорил, несмотря на это, консорциум W3C уже пропустил несколько этапов в процессе утверждения). С индустриальной поддержкой большинства главных разработчиков браузеров (единственным исключением является Microsoft) эти спецификации, вероятнее всего, будут внедряться быстро и последовательно, как только они достигнут стабильного состояния.

Всеобщее желание состоит в том, чтобы избежать очередной войны стандартов. К счастью, так как оба языка поддерживают пространства имен XML (или, в случае HTML-сериализации в HTML 5 — переключение DOCTYPE), маловероятно, что мы увидим такую же зависимость отображения документа от браузера, какая наблюдалась в 90-ых. Если отмести в сторону войны стандартов, будущее web-разработки выглядит светлым. Эти новые возможности разметки и API предоставят хорошую оболочку для web-разработки, которая должна сократить разрыв между настольными и web-приложениями.

Оригинал: Mike Malone, XHTML 2 vs. HTML 5
Перевод: Helios

habr.com

XHTML и HTML уроки для начинающих академия



XHTML — это HTML, написанный как XML.


Что такое XHTML?

  • XHTML расшифровывается как EXtensible HyperText Markup Language
  • XHTML почти идентичен HTML
  • XHTML является более строгим, чем HTML
  • XHTML — это HTML-код, определяемый как XML-приложение
  • XHTML поддерживается всеми основными браузерами

Почему XHTML?

Многие страницы в Интернете содержат «плохие» HTML.

Этот HTML-код отлично работает в большинстве браузеров (даже если он не следует правилам HTML):



  Это плохой HTML

<body>
  <h2>Неверный HTML-код
  <p>Это абзац
</body>

Современный рынок состоит из различных браузерных технологий. Некоторые браузеры работают на компьютерах, а некоторые браузеры работают на мобильных телефонах или других небольших устройствах. Малые устройства часто не хватает ресурсов или мощности для интерпретации «плохой» разметки.

XML является языком разметки, в котором документы должны быть помечены правильно (быть «хорошо сформированный»).

Если вы хотите изучать XML, ознакомьтесь с нашим справочником по XML.

Сочетая сильные стороны HTML и XML, был разработан XHTML.

XHTML — это HTML-код, переработанный как XML.


Наиболее важные отличия от HTML:

Структура документа

  • XHTML DOCTYPE is Обязательный
  • Атрибут xmlns в <html> Обязательный
  • <html>, <head>, <title>, и <body> являются Обязательным

XHTML-элементы

  • Элементы XHTML должны быть правильно вложен ными
  • Элементы XHTML всегда должны быть закрыты
  • Элементы XHTML должны быть в нижнем регистре
  • Документы XHTML должны иметь один корневой элемент

Атрибуты XHTML

  • Имена атрибутов должны быть в нижнем регистре
  • Значения атрибутов должны быть котируем ыми
  • Минимизация атрибутов запрещен а


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

Документ XHTML должен иметь декларацию формата XHTML.

Полный список всех XHTML -файлов содержится в нашей ссылке на HTML-теги.

Элементы <HTML>, <head>, <Title> и <BODY> также должны присутствовать, а атрибут xmlns в <HTML> должен указывать пространство имен XML для документа.

В этом примере пок

html5css.ru

Компьютеры и Интернет

Расширяемый язык разметки гипертекста (XHTML) — это быстрый способ ссылаться на несколько рекомендаций по языку, которые широко используются на устройствах с поддержкой Интернета для просмотра веб-страниц. Хотя он назван в честь своего предшественника, языка гипертекстовой разметки (HTML), он фактически основан на расширяемом языке разметки (XML), который является очень избирательной частью стандартного обобщенного языка разметки (SGML).
По сути, все они являются потомками SGML. Хотя HTML является прямым приложением SGML, XHTML — это то, что называется пространством имен, или набор определений для XML-документа, который помогает избавиться от двусмысленности, когда в любой заданной ситуации используется более чем один словарь XML.

Язык возник из-за нескольких ограничений HTML и разнообразных способов реализации HTML. Примерно в то время, когда HTML обновился до версии 4, он начал ослабевать, при правильном использовании многими интерпретаторами HTML, компьютерными программами, которые анализируют HTML-документы на отформатированной, просматриваемой веб-странице. Поскольку появились мобильные устройства и другие платформы для просмотра веб-страниц, было необходимо лучшее решение. XML — это гораздо более строгая реализация SGML чем HTML, и в одном экземпляре могут использоваться различные пространства имён XML. Поэтому около 2000 года консорциум World Wide Web (W3C) разработал и сделал XHTML одной из своих рекомендаций для решения некоторых из этих возникающих проблем.

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

Благодаря возможности XHTML включать другие пространства имён XML в документ, его можно расширить несколькими способами, чтобы представить больше, чем просто форматирование страницы. Например, математический язык разметки (MathML) может быть включен в эти документы для отображения математических формул и обозначений. Изображения также могут быть встроены с использованием пространства имён масштабируемой векторной графики (SVG) в документе этого типа. Таким образом, XHTML также может быть включен в другой XML-документ.

Поскольку XHTML на самом деле просто HTML, уточнённый в соответствии с правилами XML, он предлагает три определения типа документа (DTD), которые дублируют те, что указаны в версии HTML версии 4. DTD — это подробное описание элементов языка разметки, включая, когда, где и как его можно использовать, а также любые связанные атрибуты. Но в более поздних версиях XHTML были установлены XML-схемы, ещё один, более надёжный способ описания XML-документа, который ещё больше расширил XHTML. В свою очередь были разработаны различные урезанные версии XHTML, которые затем могут быть использованы для конкретных целей, многие из которых вращаются вокруг мобильных вычислительных платформ.

mega-obzor.ru

HTML XHTML



XHTML является HTML написанный в формате XML.


Что такое XHTML?

  • XHTML — EXtensible HyperTextMarkup Language (Открытый Язык Разметки Гипертекста)
  • XHTML практически идентичны с HTML
  • XHTML строже, чем HTML
  • XHTML является HTML определенными в XML-приложения
  • XHTML поддерживается всеми основными браузерами

Почему XHTML?

Много страниц в интернете содержат «плохой» HTML.

HTML код прекрасно работает в большинстве браузеров (даже если это не соответствует Правилам HTML):



 Это плохой HTML

<body>
 <h2>Плохой HTML
 <p>Это параграф
</body>

Сегодня рынок состоит из разных браузерных технологий. Некоторые браузеры работают на компьютерах, и некоторые браузеры запускаются на мобильных телефонах или других портативных устройствах. Небольшим устройствам часто не хватает ресурсов или возможностей для интерпретации «плохой» разметки.

XML является языком разметки, где документы должны быть размечены правильно (быть «правильно сформированными»).

Если вы хотите выучить XML, пожалуйста, прочитайте наши Учебник XML.

Сочетая преимущества HTML и XML было разработано XHTML.

XHTML это HTML написанный в формате XML.


Наиболее важные отличия от HTML:

Структура Документа

  • XHTML DOCTYPE является обязательным
  • XHTML атрибут <html> является обязательным
  • <html>, <head>, <title>, и <body> являются обязательными

Элементы XHTML

  • XHTML элементы должны быть правильно вложенные
  • XHTML элементы всегда должны быть закрытыми
  • XHTML элементы должны быть строчными
  • XHTML документы должны иметь один корневой элемент

Атрибуты XHTML

  • Имена атрибутов должны быть в нижнем регистре
  • Значения атрибутов должны быть кавычках
  • Минимизация атрибутов запрещается

<!DOCTYPE ….> Является Обязательным

XHTML должен иметь декларацию тип документа XHTML DOCTYPE.

Полный список всех XHTML Doctypes в нашем справочнике HTML теги.

Элементы <html>, <head>, <title>, и <body> также должн присутствовать атрибут xmlns в <html> необходимо указать пространство имен xml для документа.

Этот пример показывает документ XHTML с минимумом необходимых тегов:

/htmlfragment>
«http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd»>

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

<head>
 <title>Название документа</title>
</head>

<body>
 наполнение контентом
</body>

</html>


Элементы XHTML должны быть правильно вложены

В HTML некоторые элементы могут быть неправильно вложены друг в друга, как это:

<b><i>Этот текст жирный и курсив</b></i>

В XHTML все элементы должны быть правильно вложены друг в друга, как это:

<b><i>Этот текст жирный и курсив</i></b>


Элементы XHTML должны быть всегда закрыты

Это неправильно:

<p>Это параграф
<p>Это еще один параграф

Это правильно:

<p>Это параграф</p>
<p>Это еще один параграф</p>


Пустые элементы должны быть закрыты

Это неправильно:

Разрыв и слеш: <br>
Разрыв и слеш: <hr>
Разрыв и слеш: <img src=»happy.gif» alt=»Радостное лицо»>

Это правильно:

Разрыв и слеш: <br />
Разрыв и слеш: <hr />
Разрыв и слеш: <img src=»happy.gif» alt=»Happy face» />


Элементы XHTML должны быть в нижнем регистре

Это неправильно:

<BODY>
<P>Это параграф</P>
</BODY>

Это правильно:

<body>
<p>Это параграф</p>
</body>


Имена атрибутов XHTML должны быть в нижнем регистре

Это неправильно:

Это правильно:


Значения атрибутов должны быть заключены в кавычки

Это неправильно:

Это правильно:


Минимизация атрибутов запрещена

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

<input type=»checkbox» name=»vehicle» value=»car» checked />

Правильно:

<input type=»checkbox» name=»vehicle» value=»car» checked=»checked» />

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

<input type=»text» name=»lastname» disabled />

Правильно:

<input type=»text» name=»lastname» disabled=»disabled» />


Как конвертировать из HTML в XHTML

  1. Добавить в XHTML <!DOCTYPE> на первой строке каждой страницы
  2. Добавить атрибут xmlns к элементу HTML каждой страницы
  3. Изменить все имена элементов в строчные
  4. Закрыть все пустые элементы
  5. Изменить все имена атрибутов в нижний регистр
  6. Все значения атрибутов заключить в кавычки

Проверка HTML с помощью W3C Валидатора


schoolsw3.com

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *