at msslovi0:
Zur eigentlichen Frage: Es gibt unzählige Abhandlungen darüber, ob man sich seine Seiten eher in HTML oder XHTML erstellen sollte. Diese beziehen sich vornehmlich darauf, das XHTML-Dokumente in 99,9% der Fälle eben nicht als solche (nämlich mit dem MIME-Type application/xhtml+xml), sondern als text/html ausgeliefert werden. Die Meinungen gehen stark auseinander, allerdings ist das ganze eine extrem theoretische Denkweise. Vom praktischen Ansatz her lohnt es sich schon heute, Dokumente XHTML-konform zu schreiben, da dadurch der Aufwand für zukünftige Anpassungen stark minimiert wird. Allerdings ist es dafür auch unerläßlich, validierenden Code zu schreiben.
Es ist das Gegenteil von "extrem theoretischen Denkweisen" - es geht um die Richtigkeit der Praxis und die Unterschiede zwischen Theorie und Praxis.
Wenn es also mal in der Praxis theoretisch wird, dann nur weil es darum geht einen best-practices-Ansatz zu bekommen.
Schreibt mal also tollen validen XHTML-Code und liefert diesen dann als Text/HTML aus, dann ist dies eben kein valider Code mehr sondern code-soup!
Der Hintergrund dazu ist dass der UA (=UserAgent) IE (=InternetExplorer) kein XHTML und kein XML versteht. In Wirklichkeit versteht der IE noch nicht einmal HTML richtig.
Wenn man nun Code an einen UA ausliefert (HTTP-Header/MIME-Code) muss dieser erkennen nach welchen Regeln er diesen parsen soll, also, ob er nach HTML (transitional, strict, frameset) oder nach XHTML (transitional, strict) validieren soll.
Sobald man XHTML als HTML ausliefert und dabei den UA in den Quirks-Modus schickt, macht man sich zunutze, dass hier mit extremer Fehlertoleranz dargestellt wird - das ist also das Gegenteil von Validität/Regelkonformheit.
Es geht somit darum wie man es richtig machen soll, und wie man mit Standard-Konformität versus Abwärtskompatibilität (= nicht Standardkonform) umgehen soll. In der Realität besteht da das Problem mit dem IE.
Ein Ansatz ist daher HTML strict mit Stylesheets zu nehmen, was hinsichtlich Barrierefreiheit ein paar Benefits hat.
Der andere Ansatz ist validen XHTML Code als XHTML auszuliefern plus weiterhin eine Weiche einzubauen, dass UAs, wie der IE, die kein XHTML verstehen, den XHTML Code als HTML/Text bekommen. Das heisst die guten UAs werden belohnt und die schlechten bekommen code-soup.
In dem Kontext wird man es dann auch oft mit dem IE-Box-Model-Bug zu tun bekommen, aber auch hier gibt es seit langem ein Framework, was völlig ohne die bekannten Hacks auskommt.
Der Ansatz XHTML zu schreiben und als HTML auszuliefern stellt somit keinen best-practices-ansatz dar, auch wenn er aus reiner Unwissenheit oft praktiziert wird. Diese Leute meinen sich Validität auf die Fahnen schreiben zu können, aber das Gegenteil ist leider wahr.