Stylesheet übernommen / durch chinesische Schriftzeichen ersetzt

9

Okay, etwas ist einfach verrückt geworden. Es sei denn, China übernimmt mit meiner Datei test style.css auf meiner iepage - nun, ich denke, sie beginnen auf dem rechten Fuß, den IE zu hassen, aber wie auch immer. Es lädt ohne Stylesheet - traurig :( Ich gehe in den Web-Inspektor und sehe, dass alle meine verknüpften Dateien mit [möglicherweise] chinesischen Zeichen gefüllt sind (瑨 汭 笠 ऊ 楷 瑤 ...) Ich habe versucht, die Dateien auf dem Server zu löschen und Die lokalen Dateien sehen gut aus und beim direkten Laden der Dateien sehen sie gut aus. Ich habe nichts getan, was das Rendering ändern sollte oder irgendetwas anderes.

    
michaellindahl 30.08.2012, 04:48
quelle

2 Antworten

9

Also ich denke ich habe es herausgefunden. Das ist seltsam . Aber trotzdem.

Ich habe Ihren HTML-Code kopiert und in eine lokale Datei eingefügt, um damit zu experimentieren. Und es hat gut geladen. Es wurde als UTF-8 gespeichert. Dann habe ich es in UTF-16 geändert, und genau das habe ich gesehen! Soweit ich das beurteilen kann, geht der Browser (Firefox für Linux für mich) davon aus, dass die verlinkten Dateien alle die gleiche Kodierung wie HTML haben ...

Also - ich nehme an, die Datei auf dem Server ist in UTF-16, und wenn Sie sie in UTF-8 ändern, sollten Sie gut sein. Hoffe das behebt es!

PS: Laut Firebug ist Ihr HTML von Ihrem Server komprimiert, auch wenn Sie es ihm nie explizit gesagt haben. Aber das scheint glücklicherweise keine Probleme zu verursachen.

    
Xavier Holt 30.08.2012, 05:13
quelle
1

Ich stieß auf dasselbe Problem mit XML-Dateien, die aus PowerShell exportiert wurden und in iFrames eingebettet waren.

Es gab kein Problem in IE10 / 11 oder Edge, aber Firefox und Chrome würden das Stylesheet nicht laden.

Die ursprüngliche Seite, die die iFrames geladen hat, war UTF8-kodiert, genauso wie das Stylesheet. Die XML-Datei wurde jedoch in UTF16LE ("Unicode" in PowerShell) exportiert. Wenn die XML-Datei vom iFrame geladen wurde, wurde das Stylesheet als chinesische Zeichen geladen.

Ich habe die Kodierung in PowerShell ...

konvertiert %Vor%

... und es hat funktioniert! Meine Vermutung ist, dass IE die Codierung aller Dateien genauso behandeln muss wie die Eltern, was bedeutete, dass die UTF16LE-kodierte Datei als UTF8 gerendert wurde. Chrome und Firefox machen das offenbar nicht.

Danke Xavier Holt dafür, dass er mich auf den richtigen Weg gebracht hat!

    
Alarchy 29.10.2015 17:25
quelle

Tags und Links