Hallo,
nach der Umstellung mehrerer Seiten auf XHTML mit u.a. folgenden Angaben
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
ergeben bei einigen Seiten beim Validieren folgenden Fehler:
Im Dokument befindet sich in Zeile 139 und Spalte 8 ein ungültiges Zeichen.
Dieses Zeichen ist in der verwendeten Zeichensatzkodierung (utf-8) nicht erlaubt.
Huch, der Validator geht von UTF-8 aus? Dann ignoriert er wohl die meta-Angabe.
Siehe Unterschied zwischen HTML und XHTML: Die XML-Deklaration und die Zeichenkodierung:
Die Standardkodierung eines X(HT)ML-Dokuments ist UTF-8. Die Angabe in einem solchen meta-Element ist aus XML-Sicht irrelevant. Wenn du eine andere Kodierung als UTF-8 verwendest, musst du diese in einer XML-Deklaration mittels <?xml version="1.0" encoding="iso-8859-1"> angeben. Da dies einige dort beschriebene Nachteile hat, ist die letztliche Lösung die Verwendung der Kodierung UTF-8 anstatt ISO 8859-1.
Siehe dazu auch diesen Forumsbeitrag.
Hierbei handelt sich um Anführungszeichen innerhalb eines Zitats.
Das weist auf ein weiteres Problem hin, oder vielleicht ist es das Hauptproblem: Wenn du die Anführungszeichen „…“, ‚…‘ oder ›…‹ verwendest, kannst du sie nicht direkt als ISO 8859-1 abspeichern, denn sie sind nicht in deren Zeichenvorrat vorhanden, siehe Codetabelle von ISO 8859-1.
Du müsstest numerische Zeichenreferenzen bzw. Entity-Referenzen verwenden, siehe Allgemeines zu Zeichen in HTML und Zeichenreferenz. „ könntest du etwa durch „ oder „ ersetzen und so weiter. Oder du verwendest einfach UTF-8 wie oben beschrieben.
(Ferner habe ich die vage Vermutung, dein Editor könnte die Anführungszeichen mit der Kodierung Windows-1252 gespeichert haben, denn in dessen Codetabelle kommen einige Anführungszeichen vor. Aber das wird sich zeigen.)
Mathias