Hi,
[CLIENT] (Browser)
url: example.orgBrowser bastelt daraus einen Request, genaueres hier
oder ungenaueres, aber auf sehr niedrigem Niveau verständlich, bei der Maus. ;-)
wenn du XHTML ausliefern willst, muss der Server den richtigen header liefern und _zusätzlich_ müssen deine Dateien gültiges XHTML sein. Und da fangen bei XHTML die Probleme mit dem IE an.
Soweit ich das verstehe (ich bevorzuge nach wie vor HTML) muss ein gültiges XHTML Dokument ein <?xml .... > am Anfang im Quelltext haben und ein application/xhtml+xml im Header senden (auch hier wikipedia).
Doch so eine HTTP Anfrage bietet dir der IE 6 zum Download an, anstatt sie anzuzeigen. Deshalb musst du auf Tricks zurückgreifen (den Server so konfigurieren, dass er an manche Browser ungültiges XHTML sendet) oder auf sauberes XHTML verzichten.
Du verquickst hier Dinge, die nichts miteinander zu tun haben.
1. XHTML 1.0 muss nicht als application/xhtml+xml ausgeliefert werden und auch keine xml-Deklaration haben, um vom Browser korrekt verarbeitet werden zu können.
2. Der IE stört sich nicht an der xml-Deklaration, sondern kennt lediglich application/xhtml+xml nicht.
Während der IE das als application/xhtml+xml ausgelieferte Dokument http://de.selfhtml.org/html/xhtml/anzeige/beispiel.xhtml zum Download anbietet, stellt er das gleiche, nur als application/xml ausgelieferte Dokument http://de.selfhtml.org/html/xhtml/anzeige/beispiel.xml korrekt als XML dar.
3. Der Server muss kein "unsauberes" XHTML an IEs senden, sondern ihnen XHTML nur als text/html ausliefern. Und dem IE7 darf er ja auch die xml-Deklaration vorsetzen, ohne ihn in den quirks ode zu schicken.
freundliche Grüße
Ingo