<?XML-Tag oder Quirksmodus - was ist besser?
Julian Becker
- meinung
0 molily
0 Ashura0 Thomas Meinike
Hallo liebe Forummer,
für mich ist es schon fast eine Plage.. man legt seine XHTML-Seiten mit CSS an.. wunderschöne Design-Konstruktionen hier, wunderschöne da.. nur wir alle wissen: unser lieber guter Freund Internet Explorer zerhaut diese doch sehr gerne.. darum was sollten wir machen: Standardkonformen Modus nutzen.
Was alle Browser überzeugt, ist ein bekanntes IE6-Problem.. kaum hat man eine XML-Anweisung in seiner Seite untergebracht, schon arbeitet dieser im Quirksmodus... das ist..... ärgerlich! Besonders weil es einem gut und gerne Seiten zerschlägt. Für mich stellt sich darum inzwischen oft genug die Frage: sollte man lieber auf die XML-Deklaration verzichten (im Zweifelsfall kann man ja sein Dokument als UTF-8 schicken lassen und trotzdem nur ISO-konforme Zeichen nehmen.. is zwar nicht der Sinn der Sache, kann aber jeder Browser und jeder Validator ist zufrieden; nur Validome warnt, man würde die <?xml-Deklation sein lassen).
So und hier ist schon der Casus Cnactus.. ich bin nämlich der Meinung, dass IE7 leider trotz der vielen (lobenswerten) Verbesserungen, so auch der <?xml-Verbesserung, kann man auch in Zukunft nicht auf diesen Browser setzen, obwohl es einem gerne seitens Microsoft und IEBlog so erklärt würde.. die Politik diesen ausschließlich für WinXP SP2 (bzw. Win2k3 SP1 oder WinXP 64 bit SP1) zur Verfügung zu stellen, wird mit Sicherheit viele Benutzer ausschließen, sodass nach wie vor mit zu vielen IE6- und darunter-Usern zu rechnen ist (zu denen darunter: bessere Möglichkeiten als CSS-Hacks oder (schöner) Conditional Comments fallen mir nicht ein, um diese "Browser-Plagen auszurotten"). Teils solche, die schlichtweg kein WinXP haben oder solche die kein SP2 haben, weil sie damit Probleme haben (soll es ja geben) bzw. (wohl auch keine kleine Gruppe): solche die ihr Windows XP nicht legal erworben haben.
Im Moment fange ich das Problem mit einer "Halb-Lösung" ab, zumindest da wo es möglich ist.. via PHP wird der User-Agent des Browsers ausgelesen, IE6 bekommt einfach keinen <?xml-Tag.. die anderen Browser schon... aber das funktioniert auch nur bei ungefaketem User-Agent und klappt auch nur mit PHP-generierten Seiten.
Was tun, sprach Zeus? Standardkonform arbeiten - oder Microsoft-konform?
Danke für eure Meinung,
Grüße,
Julian
Hallo,
ich sehe dein spezielles Problem nicht. Die Frage wurde im Allgemeinen hier schon öfters diskutiert mit ähnlichen Ausgängen. Das Ergebnis ist meist der Rat, konsequent UTF-8 zu verwenden, sodass sich alle möglichen Kodierungsfragen überhaupt nicht stellen. Was spricht gegen diese Patentlösung?
sollte man lieber auf die XML-Deklaration verzichten (im Zweifelsfall kann man ja sein Dokument als UTF-8 schicken lassen und trotzdem nur ISO-konforme Zeichen nehmen..
Warum nicht UTF-8 auch ausreizen, wenn man es einsetzt? Es gibt Browser, die gewisse seltene Zeichen UTF-8-kodiert nicht verstehen, aber dieselben Zeichen z.B. als numerische Zeichenreferenzen?
ich bin nämlich der Meinung, dass IE7 leider trotz der vielen (lobenswerten) Verbesserungen, so auch der <?xml-Verbesserung, kann man auch in Zukunft nicht auf diesen Browser setzen
Ok. Das Aufkommen des IE 7 ändert tatsächlich erst einmal nichts an der Richtigkeit der besagten Standardlösung.
Was tun, sprach Zeus? Standardkonform arbeiten - oder Microsoft-konform?
Du kannst auch weiterhin ISO-8859-1-kodiertes XHTML verwenden und die Kodierung sowohl im HTTP-Header als auch in einem meta-Element angeben. Solange du das XHTML nur als text/html auslieferst, birgt das keine praktischen Probleme. Allerdings ist das Dokument dann für sich genommen fehlerhaftes XML. Das ist ein hypothetisches Problem, das real wird, wenn du autoren- oder serverseitig XML-Prozessoren verwendest und vor dem Parsen kein <?xml version="1.0" encoding="ISO-8859-1" ?> ins Dokument eingefügt hast. Genauso wird diese Vorgehensweise problematisch, wenn du das XHTML-Dokument irgendwann als application/xhtml+xml auslieferst. Denn z.B. Mozilla und Opera übernehmen die Kodierungsangabe im HTTP-Header nicht in eine XML-Deklaration, wenn das Dokument lokal gespeichert wird oder ähnliches. Dann gibt es irgendwann Zeichensalat.
Mathias
Hallo Julian.
[…] die Politik diesen ausschließlich für WinXP SP2 (bzw. Win2k3 SP1 oder WinXP 64 bit SP1) zur Verfügung zu stellen, wird mit Sicherheit viele Benutzer ausschließen, […]
Ist mir etwas entgangen? Nach meinen Informationen wird es den IE 7 nur für WinXPSP2 und WinVista geben.
Im Moment fange ich das Problem mit einer "Halb-Lösung" ab, zumindest da wo es möglich ist.. via PHP wird der User-Agent des Browsers ausgelesen, IE6 bekommt einfach keinen <?xml-Tag.. die anderen Browser schon... aber das funktioniert auch nur bei ungefaketem User-Agent und klappt auch nur mit PHP-generierten Seiten.
Einen schönen Samstag noch.
Gruß, Ashura
Hallo,
Was tun, sprach Zeus? Standardkonform arbeiten - oder Microsoft-konform?
Das eine tun und das andere nicht lassen.
MfG, Thomas