CSS用日语呈现?

时间:2012-05-07 22:52:16

标签: html css character-encoding

注意:我继承了这个网站,我没有构建它。

主页突然无法正常工作。看起来这是一个CSS问题。当我进入Safari(Mac)的网络检查员时,我点击打开CSS,它显示了一堆看起来像日文字符的东西。不知道会怎么做。除了进行一些基本内容(HTML)更改之外,我从未对网站做过多少工作。他们说没有其他人也在做出改变。该网站的其余部分使用不同的样式表,并且工作正常。有任何想法吗?这是site。提前谢谢!

4 个答案:

答案 0 :(得分:6)

问题是由HTML文档的编码引起的:它是UTF-16LE编码的。你可以看到这个,例如通过在Firefox上打开它,通过View菜单查看正在应用的编码,然后通过该菜单手动将编码更改为ISO-8859-1。您将看到,当解释为ISO-8859-1时,文档以“ÿþ”开头,这是UTF-16中的字节顺序标记。 (这会覆盖声称文档为ISO-8859-1编码的meta标记的效果。)

由于外部CSS文件没有关于HTTP标头或文件内容中的编码的信息,因此浏览器必须进行猜测。 IE正确猜测它是Ascii编码的,但其他浏览器使用HTML文档的编码。如果您使用两个Ascii字符并将其解释为UTF-16代码单元,则大多数情况下会获得中文(CJK)字符。

由于通常不应在Web上使用UTF-16,因此修复方法是在编辑器中打开HTML文档并将其保存为ISO-8859-1编码或某些类似的编码,例如windows-1252。例如,在记事本上,使用“另存为”并选择“ANSI”格式。

答案 1 :(得分:1)

这里的答案方已经晚了,但是我找到了另一个解决方案,在html渲染但css文件出现日语(或中文我不确定!)特殊字符的情况下工作。

解决方案对我来说更简单:

我添加了属性charset =" UTF-8"到在Html文件中导入css文件的行。

这对我来说是因为它解决了chrome检查器源视图中用日语打开的css文件的问题

答案 2 :(得分:0)

中文字符通常是不正确的Unicode编码(Unicode基本上是ASCII之后的版本)的结果,可能是UTF-16。如果我在标签下查看Chrome中的file,看起来很正常,但如果我在Chrome的检查器/控制台中查看它,则看起来像是乱七八糟。 只需保存文件的副本,下载Notepad++之类的内容,安装,运行并打开文件,然后尝试使用不同的UTF保存副本编码或Ascii,将您的HTML链接到它,看看是否有帮助。

编辑:

或者说,为什么我要求你这样做,当我可以使用pastebin< - 请注意链接,我只是为你粘贴了我的副本。

Jukka的建议似乎很合理;问题似乎不是css文件而是html doc。我的编辑推荐应该有效,但许多其他编辑也应如此。 (我几乎想要删除这个答案,但我认为指出一个常见错误可能会有用。)

答案 3 :(得分:0)

我知道我来晚了,但是事情就这样了: 到底是什么引起了这个问题,我不确定,但最终,它是字符集的问题。上面的解决方案为我工作(“我将属性charset =“ UTF-8”添加到了将HTML文件本身导入到CSS文件中的行中”),可能是因为直接在CSS链接中指定字符集会覆盖所有问题