Как я могу заставить некорректно сформированный документ XHTML загружаться как HTML?

Я пытаюсь открыть http://www.x.org/releases/current/doc/man/man3/xcb_grab_keyboard.3.xhtml в Firefox, но это не удается из-за ошибки синтаксического анализа XML. У Chromium есть похожая проблема, но он показывает, по крайней мере, документ до ошибки.

Оба результата нежелательны, я просто хочу проанализировать страницу как HTML. Какие варианты у меня есть, кроме использования другого браузера?

2 ответа

Решение

Для статических документов следующий букмарклет будет работать так, как задумано: Документ XHTML будет отображаться в виде (не очень строгого) HTML.

javascript:(function(){
 var x = new XMLHttpRequest();
 x.open('GET', location.href);
 x.onload = function() {
   var d = document.implementation.createHTMLDocument('');
   d.documentElement.innerHTML = x.responseText.replace(/^[\S\s]*?<html\b/i, '<html');
   document.replaceChild(d.documentElement, document.documentElement);
 };
 x.send();
})();

Я раздеваю первых персонажей до <html> тег. В противном случае все заканчивается <body> тег. Следовательно, стили (и сценарии) не будут применяться достаточно хорошо.

Если это только время от времени, вы можете посвятить немного ручного труда. Когда вы видите ошибку синтаксического анализа XML, вы можете вернуться назад, щелкнуть правой кнопкой мыши по ссылке и выбрать "Сохранить ссылку как". Затем отредактируйте свою копию HTML, чтобы исправить ошибку. Откройте исправленную копию в браузере.

Удалив тег, который был отмечен в ошибке синтаксического анализа, я смог просмотреть страницу, которую вы указали.

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