Бывают моменты, когда я чувствую, что бьюсь головой о кирпичную стену. Или, может быть, я должен сказать, что когда я чувствую, что барабан, который я бью, стучат кирпичом!
Я выступал за использование XHTML в течение многих лет, и, хотя я нисколько не сожалею о том, что XHTML 2 мертв (потому что он был полностью оторван от реальности), я очень сожалею, что многие разработчики вернулись к использованию HTML 4 Я также сожалею, что значительная часть тех дальновидных разработчиков, которые уже начали разметку своего контента с помощью HTML 5 , делают это с использованием синтаксиса HTML 4 .
XHTML имеет много преимуществ, которые в равной степени справедливы и для строгого HTML, например, удаление разметки представления и последовательное цитирование атрибутов для двух примеров. Но есть одно преимущество XHTML, которое принадлежит только ему, и это синтаксис XML . Преимущество использования синтаксиса XML кажется мне настолько значительным, что я откровенно поражен тем, кто его оспаривает.
Не поймите меня неправильно, я не буду отвергать как невежественного человека, который не согласен со мной. То, на что я обращаю внимание, это то, насколько невероятным кажется мне то, что такая очевидно полезная вещь, как корректность XML, может пройти мимо любого. XHTML, используемый как text/html
, имеет преимущества перед HTML 4 просто потому, что выглядит как XML .
Итак, это не совсем XML . Таким образом, самозакрывающийся синтаксис работает только в текущих браузерах из-за их склонности к исправлению ошибок. Так что XHTML как text/html
Но это не имеет значения. Важно то, что он выглядит как XML , и для любого анализатора XML, который может анализировать строку, нет никакой разницы .
Вот пример — недавно мне нужно было найти способ создания DOM из HTML-кода responseText
Я не мог получить responseXML
XML ), и я не мог использовать трюк «document.write to iframe», потому что реализация не поддерживала это. Поэтому я использовал DOMParser (который работает в Firefox, Opera и Safari):
var dom = new DOMParser().parseFromString(request.responseText);
И это работало нормально. Но это работало только для правильно оформленных документов XHTML . Почему? Потому что они похожи на XML ! Это не удалось на документах HTML 4 , потому что они этого не делают.
Таким образом, есть простой пример того, как выгодно разрабатывать веб-страницы, используя правильно сформированный XHTML , SynBay , независимо от типа mime, используемого для его доставки. Разметка, которая выглядит как XML, может быть проанализирована как XML , независимо от того, является ли она на самом деле.
Я имею в виду на самом деле. Что может быть более убедительным? Я просто не понимаю