HTML против XHTML

HTML и XHTML оба языка, на которых написаны веб-страницы. HTML это HTMLXHTMLВведение (из Википедии) HTML или HyperText Markup Language - основной язык разметки для создания веб-страниц и другой информации, которая может отображаться в веб-браузере.. XHTML (расширяемый язык разметки гипертекста) - это семейство языков разметки XML, которые отражают или расширяют версии широко используемого языка разметки гипертекста (HTML), языка, на котором пишутся веб-страницы.. Расширение имени файла .html, .htm .xhtml, .xht, .xml, .html, .htm Тип интернет-медиа текст / html приложение / XHTML + XML Разработано W3C & WHATWG Консорциум World Wide Web Тип формата Формат файла документа Язык разметки Расширен от SGML XML, HTML Стенды для Язык гипертекстовой разметки Расширяемый язык разметки гипертекста заявка Применение стандартного обобщенного языка разметки (SGML). Применение XML функция Веб-страницы написаны в HTML. Расширенная версия HTML, более строгая и основанная на XML. Природа Гибкая структура, требующая мягкого HTML-специфического парсера. Ограничительное подмножество XML и должно быть проанализировано с помощью стандартных анализаторов XML. происхождения Предложено Тимом Бернерсом-Ли в 1987 году. Рекомендация Консорциума World Wide Web в 2000 году. Версии HTML 2, HTML 3.2, HTML 4.0, HTML 5. XHTML 1, XHTML 1.1, XHTML 2, XHTML 5.

Содержание: HTML против XHTML

  • 1 Обзор HTML и XHTML
  • 2 Особенности документов HTML и XHTML
  • 3 XHTML против спецификации HTML
  • 4 Как перейти с HTML на XHTML
  • 5 Как перейти с XHTML на HTML
  • 6 Ссылки

Обзор HTML и XHTML

HTML является преобладающим языком разметки для веб-страниц. HTML создает структурированные документы, определяя структурную семантику для текста, такого как заголовки, списки, ссылки, цитаты и т. Д. Он позволяет встраивать изображения и объекты для создания интерактивных форм. Он написан в виде тегов в угловых скобках - например,, . Скрипты на языках, таких как JavaScript также могут быть загружены.

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

Особенности HTML и XHTML документов

HTML-документы состоят из элементов, которые имеют три компонента - пару тегов элемента - начальный тег, конечный тег; атрибуты элемента, заданные в тегах и фактическом, текстовом и графическом содержимом. Элемент HTML - это все, что находится между тегами и включая их. (Тег - это ключевое слово, заключенное в угловые скобки).

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

Помимо различных открывающих объявлений для документа, различия между документами HTML 4.01 и XHTML 1.0 в каждом из соответствующих DTD - в значительной степени синтаксические. Базовый синтаксис HTML допускает множество ярлыков, которых нет в XHTML, таких как элементы с необязательными открывающими или закрывающими тегами и даже элементы EMPTY, которые не должны иметь конечный тег. Напротив, XHTML требует, чтобы все элементы имели открывающий или закрывающий тег. XHTML, однако, также вводит новый ярлык: тег XHTML может открываться и закрываться внутри одного и того же тега, включая косую черту перед концом тега, например так:
. Введение этого сокращения, которое не используется в объявлении SGML для HTML 4.01, может привести к путанице в более раннем программном обеспечении, незнакомом с этим новым соглашением. Исправление для этого должно включать пробел перед закрытием тега, как таковой:
.

XHTML против спецификации HTML

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

Обратите внимание, однако, что эти различия применяются только тогда, когда XHTML-документ используется в качестве приложения XML; то есть с MIME-типом application / xhtml + xml, application / xml или text / xml. Документ XHTML, обслуживаемый MIME-типом text / html, должен быть проанализирован и интерпретирован как HTML, поэтому в этом случае применяются правила HTML. Таблица стилей, написанная для документа XHTML, обслуживаемого с типом MIME text / html, может работать не так, как задумано, если документ затем подается с типом MIME application / xhtml + xml. Для получения дополнительной информации о типах MIME обязательно прочитайте MIME Types.

Это может быть особенно важно, когда вы подаете документы XHTML в виде text / html. Если вы не знаете о различиях, вы можете создавать таблицы стилей, которые не будут работать должным образом, если документ будет служить настоящим XHTML..

В тех случаях, когда термины «XHTML» и «документ XHTML» встречаются в оставшейся части этого раздела, они относятся к разметке XHTML, обслуживаемой с типом XML MIME. XHTML-разметка, используемая как text / html, является HTML-документом для браузеров.

Как перейти с HTML на XHTML

В соответствии с рекомендациями W3C можно выполнить следующие шаги для миграции HTML в XHTML (документы XHTML 1.0):

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

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

Как перейти с XHTML на HTML

Чтобы понять тонкое различия между HTML и XHTML, рассмотрим преобразование действительного и правильно оформленного документа XHTML 1.0 в действительный документ HTML 4.01. Для выполнения этого перевода требуются следующие шаги:

  • Язык для элемента должен быть указан с языки атрибут, а не XHTML XML: языки атрибут. XHTML использует встроенный в XML атрибут определения языка.
  • Удалить пространство имен XML (XMLNS = URI). HTML не имеет возможностей для пространств имен.
  • Измените объявление типа документа с XHTML 1.0 на HTML 4.01.
  • Если есть, удалите объявление XML. (Обычно это: ).
  • Убедитесь, что тип документа MIME установлен на текст / html. Для HTML и XHTML это происходит из HTTP Тип содержимого заголовок, отправленный сервером.
  • Измените синтаксис пустого элемента XML на пустой элемент стиля HTML (
    в
    ).

Ссылки

  • Википедия: XHTML
  • Википедия: HTML # SGML по сравнению с HTML на основе XML