Automatische Ãœbersetzung von deutschen Umlauten in Links in HTML Dokumenten

Heute ist mir wieder mal ein (potenzieller?) Bug in Internet Explorer aufgefallen:

– Das Dokument ist im ISO-8859-1 Zeichensatz geschrieben. Der HTTP-Header sowie die META-Angabe zu Content-Type spezifizieren ausdrücklich ISO-8859-1.

– Der Link enthält in der URL einen deutschen Umlaut (ebenfalls ISO-8859-1 codiert; jedoch kein URL-Encoding).

Firefox konvertiert das „ü“ beim Klick richtig nach „%FC“, der Latin1 Version in URL-Encoding.

Internet Explorer und Opera hingegen verwenden die UNICODE-Version „%C3%BC“.

Meinem Gefühl nach verhält sich hier demnach Firefox richtig, zumal nach Umstellung des Dokuments auf UTF-8 Firefox ebenfalls die UTF-Version des URL-Encoding verwendet.

Davon abgesehen liegt der Fehler vermutlich bei mir – ich sollte die Zeichen vorcodieren, dann stellt sich die Zeichensatz-Frage für den Browser erst gar nicht. Mal in den Standard-Dokumenten nachsehen – irgendwann…

Anmerkung: Folgende Begriffe sind äquivalent:
Latin 1 = ISO-8859-1
UTF-8 = UNICODE

Manuel

4 Reaktionen zu “Automatische Ãœbersetzung von deutschen Umlauten in Links in HTML Dokumenten”

  1. Thomas Urban

    Hallo,

    kleine Korrektur … man mag mir Krümelkackerei vorwerfen: UTF-8 und Unicode sind wahrlich nicht _äquivalent_.

    Unicode ist vielerlei – eine Idee, vielleicht noch eine Organisation oder gar Ausdruck für die Masse aller Zeichen, die weltweit auf IT-Anlagen darstellbar sein sollten. UTF-8 ist eine konkrete Form der Kodierung, um diese Zeichen technisch zu repräsentieren.

    Oder banaler widerlegt: wenn UTF-8=Unicode und (zweifelsohne dann auch) UTF-16=Unicode und UTF-32=Unicode, dann auch UTF-8=UTF-16=UTF-32, was aber nicht zutrifft.

  2. Johannes Freund

    Wäre super wenn Du die Lösung veröffentlichen würdest.
    Ich habe das gleiche Problem (Safari kodiert auch falsch) und wäre sehr froh eine Lösung zu finden.
    MfG Johannes Freund

  3. M.Hirsch

    Hallo Johannes,

    ich habe die Software dann so umgeschrieben, dass sie durchgehend UTF-8 verwendet. So funktioniert’s in allen Browsern, die wir getestet haben.

    Aber:
    Inzwischen schreibe ich die Umlaute aus. Also „ä“->“ae“ usw, da sich weiterhin Probleme mit RSS-Readern und -Verzeichnissen sowie auf Websites, die uns verlinken, ergeben haben.

    Ich würde die Langform empfehlen, um auf Nummer Sicher zu gehen.

    Hallo Thomas,
    hast natürlich recht. Eigentlich lege ich auch Wert auf die richtige Verwendung von Fachbegriffen. Werd mich bessern 😉

  4. M.Hirsch

    Kleiner Nachtrag. Ich bin in anderem Zusammenhang nun über den passenden Teil der Spezifikation zum Thema gestolpert.

    Das Verhalten von Internet Explorer ist in diesem Fall korrekt.

    http://www.w3.org/TR/REC-html40/appendix/notes.html#non-ascii-chars