<div class="clear"/>
Если вы обслуживаете страницу XHTML как text/html
, браузеры не читают ее, используя настоящий анализатор XML. Они используют обычный старый HTML-парсер, который не знает о самозакрывающихся тегах. Для анализатора HTML4 это просто открытый тег с какой-то странной пунктуацией. (Если бы парсеры браузера действительно использовали правила SGML, это было бы совсем другое нежелательное, но они этого не делают.)
Пока IE9 не станет широко распространенным, мы не сможем обслуживать веб-страницы общего назначения как application/xhtml+xml
, что необходимо для того, чтобы браузер использовал настоящие правила синтаксического анализа XML. До этого времени, если вы пишете документы XHTML, вам нужно будет сделать ваши документы также обратно совместимыми с простым HTML, что означает всегда и только с использованием самозакрывающегося синтаксиса для элементов, объявлено, что имеет EMPTY
модель контента. (img
, br
и т. Д.)
Существуют и другие правила относительно того, что вам нужно сделать, чтобы написать HTML-совместимый XHTML, но это самое важное. Приложение C стандарта XHTML 1.0 представляет собой список различий; это выглядит немного сложнее, но многие из точек обращаются к функциям, которые вы не хотите использовать в любом случае, а некоторые теперь не имеют значения, поскольку они говорят о том, чтобы быть древними браузерами, такими как Netscape 4. Практика помещения пробела перед />
больше не требуется для чего-либо общего, например.