[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Umlaute



Hi,

Oliver Block wrote:
> Am Mittwoch, 30. August 2006 18:08 schrieben Sie:
>>> <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-15">
>>>
>>> Welcher Zeichensatz steht darin?
>> iso-8859-1
> 
> Der Browser nimmt einen anderen Zeichensatz als Du verwendest.
> 
> Das sollte jedoch nicht passieren, wenn der meta-Tag vorhanden ist. Wenn ich 

Der meta-Tag ist an sich einigermaßen unsinnig. Entscheidend für den
ausgewählten Zeichensatz ist _nicht_ HMTL selber, sondern HTTP.

Zum Prinzip:
Der Browser stellt eine Anfrage (get) an den Webserver (http).
Der Webserver stellt den übertragenen Daten (Webseiten), einen
HEADER voran (Das Prinzip ist ähnlich bei MIME).
Im HEADER gibt es u.A. eine Eigenschaft
Content-Type:
Das beschreibt den Inhalt also z.B. 'text/html', 'application/xml'
oder auch text/plain.
Hier _kann_ jetzt zusaetzlich die Zeichenkodierung angegeben sein.
Das ganze sieht dann etwa so aus:
Content-Type: txt/html; charset=utf-8

Also legt der Admin des Webservers die Zeichensaetze fest.

Nun kann man durchaus im übertragenden Dokument einen Zeichensatz
angeben.
Das ist aber etwas unsinnig, obwohl es häufig funktioniert.
Unsinnig ist es deswegen, weil erst im Dokument selber geklärt wird
welcher Art die verwendeten Zeichen in ihm selber sind. Das ist so
als wuerde ich in Thaihotisch erklären wie Thaihotisch funktioniert.

Trotzdem sieht HTML eine Möglichkeit vor Zeichensätze zu definieren.
Das geschieht über ein HTTP-Äquivalent:
<meta http-equiv="Content-Type" content="txh/html; charset=utf-8">
Dieses Konstrukt existiert um einen eventuell fehlenden HTTP-Header
nachtragen zu können.

Um den Zusammenhang zu verstehen hilft 'ethereal' oder das
Firefox-Plugin LiveHTTPHeader.


-hth
-Jörg



Reply to: