2015-03-10 2 views
0

Я начал изучать основы HTML и изучил различия между XHTML и HTML. Я заметил, что XHTML намного строже. Рассмотрим ниже разметкеПочему разметка 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"> 
<html xmlns="http://www.w3.org/TR/xhtml1" xml:lang="en" lang="en"> 
<head> 
    <title>Every document must have a title</title> 
</head> 
<body> 
    <b><p>hey</b></p><br> 
</body> 
</html> 

я не правильно вложенные теги и <br> не закрыта должным образом в XHTML, но это не вызывает каких-либо ошибку синтаксического анализа, и когда я сохранил файл в test.xhtml затем он поднял разбора ошибок. Итак, как на самом деле создавать файлы XHTML, а также как использовать XHTML в HTML5? и может ли кто-нибудь объяснить мне, что файлы, сохраненные с .xhtml, являются файлами XHTML и с .html рассматриваются как файлы HTML?

Iam используя Google Chrome. Я понимаю различия, но не могу посмотреть практически в браузере. Может ли кто-нибудь помочь мне разобраться в этом.

ответ

2

Большинство веб-браузеров имеют XML и HTML-парсеры. Они используют разные правила.

В целом правила они следуют являются:

  • Если документ имеет один из различных XML-контент-типов и документ в имени XHTML пространстве: С помощью XML парсер
  • Если документ имеет text/html тип контента затем использовать HTML анализатор
  • Если документ загружается из локального файла и имеет расширение в .xhtml файл, а затем рассматривать его как имеющий тип содержимого application/xhtml+xml
  • Если документ загружается из локального файла и имеет расширение в .html файл, а затем рассматривать его как имеющий тип содержимого text/html
+0

Я не думаю, что они когда-либо перестали делать это. То, что старые браузеры (особенно IE) делало иначе, просто не распознало тип содержимого XML в целом. Фактически, это первый раз, когда я слышал о том, что браузеры возвращаются к парсеру HTML. – BoltClock

+0

Итак, нет способа сделать .html синтаксический анализ файла с помощью анализатора XHTML? – user3205479

+0

@BoltClock - Huh. Я только что получил ошибку. Несколько лет назад была большая проблема, когда Opera представила резервную копию. Я думал, что все последовали этому примеру. – Quentin