Hallo,
Hier liegt nun auch mein Problem. Der IE kommt mit application/xhtml+xml nicht klar, und das ganze zwar in der Deklaration und im (bzw. für IE nur) meta anzugeben obwohl von HTTP aus text/html gesendet wird erscheint mir hier auch gegen die genannte "reine Lehre".
Das meta-Element mit http-equiv="Content-Type" erfüllt nur einen Zweck: Die Kodierungsangabe für den Fall zu beinhalten, dass das XHTML-Dokument als HTML verarbeitet wird.
Insofern wäre
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
ziemlich sinnlos - das juckt keinen Browser, der arbeitet schon im HTML-Modus in dem Fall, dass er diesem Element Aufmerksamkeit schenkt.
Wenn das Dokument als XHTML verarbeitet wird, dann wird diese meta-Angabe sowieso ignoriert, denn dann gelten die XML-Regeln zur Bestimmung der Kodierung eines Elements. Kurz gesagt heißt das in der Praxis: Wenn die Kodierung nicht UTF-8 ist, muss eine XML-Deklaration mit Kodierungsangabe vorhanden sein.
Die Verarbeitbarkeit eines Dokuments als HTML *und* als XHTML bringt man unter ein Hut, indem man UTF-8 benutzt, die XML-Deklaration weglässt und eine herkömmliche meta-Kodierungsangabe setzt.
An sich hätte ich kein Problem alles auf text/html umzuschreiben, allerdings blicke ich durch die damit Entstehende Problematik, nicht ganz durch, bzw. das was als solche gepredigt wird.
Wie gesagt, text/html musst du sowieso verwenden und im meta-Element natürlich auch angeben. XHTML wurde extra dafür ausgelegt, auch mit alten Browsern kompatibel zu sein.
Die üblichen Einsprüche gegen HTML-kompatibles XHTML (http://hixie.ch/advocacy/xhtml usw.) gehen lediglich darauf hinaus, dass niemand, der nur HTML-kompatibles XHTML schreibt, wirklich XHTML/XML versteht und praktisch anwenden kann.
Mathias