Gunnar Bittersmann: XHTML & utf-8

Beitrag lesen

Hello out there!

Es scheint aber, dass weder Firefox noch IE utf-8 kodierte Dateien erkennen, wenn kein BOM dabei ist.

Nope. Weder Firefox noch IE* verarbeiten das Dokument als XHTML wegen

Content-Type: text/html

sondern schicken es durch den Tag-Soup-Parser. Dieser ist durchaus empfänglich für HTTP-EQUIV-Angaben (wenn es keine dementsprechende Angabe im HTTP-Header gibt). Mache eine solche – so früh wie möglich im Dokument. [HTML401 §5.2.2]

Fehlt jegliche Angabe zur Zeichencodierung, wird ISO 8859-1 angenommen. Im Tag-Soup-Parser wohlgemerkt; bei Verarbeitung als XHTML (Content-Type: application/xhtml+xml) wird bei nichtvorhandenem BOM UTF-8 angenommen. [XML §4.3.2, XML §F.1]

Soll ich per .htaccess den ContentType für .html und .css ändern, und in der php.ini einstellen, dass die Dateien als utf-8 gesendet werden?

Auch das wäre möglich, wenn du wirklich alle Dokumente in dieser Codierung hast.

Reicht dazu die AddDefaultCharset-Direktive von Apache?

Für CSS (Content-Type: text/css) nicht. U.U. ist es dafür aber auch nicht nötig. [https://forum.selfhtml.org/?t=156477&m=1019013] Wenn doch: AddCharset.

See ya up the road,
Gunnar

* IE schon wegen seiner Unfähigkeit nicht

--
„Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)