Каковы основные различия между XHTML и HTML?

В чем основные различия между XHTML и HTML? Какой, на ваш взгляд, лучше и почему? Большинство браузеров поддерживают оба варианта?

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
47
0
59 782
8

Ответы 8

Extensible Hypertext Markup Language или XHTML - это язык разметки, который имеет ту же глубину выражения, что и HTML, но также соответствует синтаксису XML.

XHTML - это «современная версия HTML 4».

Более подробная информация: википедия и W3C

На самом деле, нет причин не генерировать действительный xhtml ... если только вы не хотите усложнить встраивание вашей работы / очистки экрана. Однако вы, вероятно, не захотите этого делать.

Marcin 12.10.2008 22:59

«XHTML - это современная версия HTML»: я должен выступить против этого, это совершенно неверно. XHTML - это HTML, реализованный с помощью XML, а не SGML. Это не современно, это другое. Например, ваш документ должен быть правильно сформирован, иначе ваш браузер просто отобразит ошибку XML.

Vincent Robert 13.10.2008 01:46

Вы слишком быстро делаете вывод. IE не поддерживает XHTML совсем, большинство серверных инструментов / шаблонов недостаточно строги, чтобы надежно выводить XML, и очень мало того, что XHTML может делать то, что не может HTML, путь не так ясен.

Kornel 19.10.2008 05:03

Совершенно верно, порнэл. И вы попадаете во всевозможные двусмысленности относительно того, какой тип контента использовать для ваших страниц. Это текст / xml? Или они text / html, но отформатированы как XML? Затем внезапно один из основных браузеров переходит в режим Quirks Mode, и ваш макет сходит с ума. Хороший беспорядок.

conny 05.11.2008 01:04

Примером различия является тег прерывания.

<br>

является правильным HTML, но в XHTML, где элементы необходимо проверять как XML, вы должны самостоятельно закрыть тег:

<br />

такое "закрытие тега" предотвращает проблемы?

alsadk 12.10.2008 23:10

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

XHTML следует обслуживать как application / xhtml + xml, чтобы вы могли воспользоваться преимуществами, иначе XHTML будет рассматриваться как обычный HTML. Использование его как «application / xhtml + xml» не является обычным явлением в Интернете из-за Internet Explorer, который не может обрабатывать XHTML.

XHTML сегодня используется (относительно) широко! Обслуживание XHTML как application / xhtml + xml встречается нечасто, потому что Internet Explorer 6 плохо справляется с этим типом MIME. Я думаю, что это уже работает в Internet Explorer 7.

Christoph Schiessl 13.10.2008 01:06

Я имел в виду, что "application / xhtml + xml" не получил широкого распространения.

Andy 13.10.2008 01:36

Дело не в том, какой из них лучше; HTML все еще продолжает развиваться, а HTML5 развивается (правда, уже много лет :)) и предоставляет некоторые новые элементы для более простого управления новыми технологиями, такими как мультимедиа на веб-страницах.

С другой стороны, XHTML - это строгость XML, если мы говорим о чистоте. Если вы сохраните свой HTML-документ правильно сформированным (закройте все открытые элементы, сохраните элементы вложенными в древовидную форму), вы извлечете максимум из мира XHTML / XML и по-прежнему сможете использовать формат HTML, объявляя свои документы в быть HTML, но при этом сохранять их «чистыми» (правильно сформированными). Я не думаю, что мы должны объявлять каждого из них «лучше»; они могут сосуществовать. Просто мы делаем свои дела правильно.

так что браузеры совместимы с ними обоими

alsadk 12.10.2008 23:17

не полностью и не со всеми версиями. xhtml 1.0 хорошо поддерживается, xhtml 1.1 не очень. html 4 и 4.01 хорошо поддерживаются, но должны использоваться в «строгом» режиме, чтобы обеспечить почти одинаковую визуализацию в разных браузерах, на сцену выходит поддержка html 5 (поэтому в старых браузерах могут быть проблемы)

zappan 13.10.2008 03:56

Если вы хотите обслуживать документ как text / html, вы не могу используете сериализатор XML! Синтаксис блоков CDATA несовместим, и сериализатору XML разрешено выводить <br> </br> или <xhtml: p>, которые прерываются в режиме HTML. Это большая проблема, потому что вам придется использовать ненадежные инструменты разметки текста.

Kornel 19.10.2008 05:07

Internet Explorer - лучший вариант. Вы не можете использовать XHTML как XML, поэтому он не предлагает много преимуществ.

Casebash 07.07.2010 16:40

Это, вероятно, лучшая статья, которую я читал, о различиях и относительных достоинствах каждого из них:

HTML против XHTML

Что мы должны использовать, HTML или XHTML и почему?

На WHATWG вики есть также довольно техническое сравнение.

Просто хочу отметить, что по состоянию на июнь 2017 года связанный веб-сайт больше не существует.

user376845 29.06.2017 08:22

@Mahouk Обе ссылки у меня работают.

Charles Roper 15.07.2017 04:34

Ах, правда, но они были мертвы, когда я оставил свой комментарий.

user376845 15.07.2017 04:38

Резюме: используйте HTML.

Есть много различий и много умных людей (которые знают, о чем говорят: D) имеютужеподвела большинство плюсов и минусов.

Как указывалось ранее, XHTML должен быть (теоретически) действительным XML. Теоретически (но не на практике) несовместимый XHTML не должен отображаться браузером.

Преимущество использования одного перед другим очень редко, поэтому пишите то, что вы лично предпочитаете - при условии, что вы делаете это последовательно. HTML5, который станет будущим веб-стандартом, будет поддерживать теги в стиле как XHTML, так и HTML 4.01 (предыдущий - через необязательную «сериализацию XML»), а XHTML2 выглядит так, как будто он будет мертв в воде без активных поставщиков. поддерживая это.

Фактически, отправка XHTML как application / xhtml + xml вызовет ошибку. Отправка XHTML как text / html на практике будет работать, потому что ваш XML-документ будет анализироваться парсером SGML, который на самом деле очень снисходителен.

Vincent Robert 13.10.2008 01:50

Разница в том, что XHTML основан на XML, а HTML основан на SGML.

Браузеры используют синтаксический анализатор SGML для содержимого, отправляемого с типом содержимого text/html, и синтаксический анализатор XML для application/xhtml+xml.

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

При использовании анализатора XML браузер остановит анализ при обнаружении синтаксической ошибки и отобразит ошибку XML. Это, конечно, верно только для браузеров, которые имеют синтаксический анализатор XML для содержимого HTML, что неверно для Internet Explorer, который только загружает файл, но не отображает его.

Что же тогда делать?

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

Вы должны использовать HTML для всего остального. HTML просто работает и сегодня является широко поддерживаемым стандартом. Даже следующий стандарт HTML 5 определяет синтаксис на основе SGML, так что это будет продолжаться.

Имейте в виду, что какой бы формат вы ни выбрали, проверка вывода всегда является хорошей идеей для обнаружения синтаксической ошибки.

Для получения дополнительной информации перейдите по этой ссылке - sitepoint.com/web-foundations/differences-html-xhtml

Vinit Kadkol 01.11.2016 21:15

Другие вопросы по теме