Axel Richter: Problem mit Unicode, kyrillischer Schrift und CSS

Beitrag lesen

Hallo,

Dann habe ich exakt den gleichen Code mit einem Texteditor unter Unicode agespeichert, siehe diese <a href='http://www.augusta-apartments-baden-baden.de/aa_t/aa_p5000p_unicode.html'> Seite</a>

Die Meta-Angabe zum Content-Type
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
widerspricht dem aber.

hier wird zwar die kyrillische Schrift korrekt dargestellt, dafür geht aber die CSS-Formatierung flöten.
Wer kann mir das Phänomen erklären bzw. einen Lösungsansatz nennen?

Schau mal in die JavaScript-Konsole des FireFox. Da findest Du:

Fehler: Unerwartetes Dateiende beim Suchen nach '',' oder '{''.  Regelsatz wegen ungültigem Selektor ignoriert.
Quelldatei: http://www.augusta-apartments-baden-baden.de/aa_css/aa_main.css
Zeile: 1

Fehler: Unerwartetes Dateiende beim Suchen nach 'Schließendes } eines ungültigen Regelsatzes'.
Quelldatei: http://www.augusta-apartments-baden-baden.de/aa_css/aa_main.css
Zeile: 1

Da ist zwar kein Fehler, aber ;-).

Dein "Unicode" ist UTF-16LE. Dieses Encoding erfordert ein BOM (Byte Order Mark) am Dateianfang. Dieses BOM erwartet der FF jetzt auch bei der CSS-Ressource. Speicherst Du diese CSS-Ressource also auch als "Unicode" mit dem Encoding UTF-16LE und lässt sie auch mit
Content-Type: text/css; charset=UTF-16LE
ausliefern, dann funktioniert es.

Besser ist aber, Du speicherst die (X)HTML-Ressource als UTF-8 _ohne BOM_ (das ist wichtig!), dann kann Dein CSS weiter ASCII- oder ANSI-kodiert bleiben. Dort musst Du ja keine kyrillischen Zeichen verwenden.

viele Grüße

Axel