HTML文档编码与声明字符编码

目录 HTML相关2017年2月27日

Html文档有时会发生乱码的现象,大多数是编码方式不同导致的问题。可以测试一下,随便打开一个网页,把浏览器编码格式改一下页面就会变成乱码,只有正确设置好编码格式才能正常显示网页。下面通过测试来说明编码正确的重要性。

HTML文档不声明编码格式

网页中不声明字符编码,不写以下代码
[meta charset="utf-8"]

1.原html文档是utf-8(带BOM)编码

在浏览器中打开浏览器会根据原文档编码采取相同编码显示网页。

2.原html文档是utf-8(不带BOM)编码

浏览器无法识别html文档的编码,文档中也无声明编码格式,会以默认字符集编码显示网页,造成乱码。

注意:BOM(BOM——Byte Order Mark,就是字节序标记),一般软件根据BOM来识别文件的编码,utf-8带了BOM浏览器就能正确识其为utf-8编码,否则会以默认编码显示。

网页中声明编码格式

1.网页声明使用utf-8编码,html文档本身以GBK编码

浏览器中显示效果

可以看到网页声明了编码格式浏览器就会按照声明的编码格式utf-8去显示网页,然而html文档是以GBK编码的,所以产生冲突导致网页产生乱码

2.网页声明使用GBK编码,html文档本身以utf-8编码

浏览器中显示效果

可以看到,html文档本身为utf-8编码,网页声明浏览器以GBK编码显示网页,所以产生了乱码。

当html文档自身编码为utf-8时,网页中要声明浏览器编码为utf-8,设置其他编码中文就会产生乱码,当html文档以其他编码格式编码时,声明浏览器编码时要保持一致,否则会产生乱码。

暂无评论

发表评论