Para documentos estáticos, o seguinte bookmarklet funcionará como pretendido: O documento XHTML será exibido como HTML (não tão estrito).
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();
})();
Estou removendo os primeiros caracteres para a tag <html>
. Caso contrário, tudo acaba na tag <body>
. Consequentemente, os estilos (e scripts) não seriam aplicados muito bem.