IE6不能加载样式,原来是编码导致!

我向来是鄙视IE浏览器的,它总是不合群,特别是IE6。痛苦的是虽然微软已经开始IE6倒计时,国外使用IE6者几乎绝灭,而国内IE6用户依然众多。公司不肯放弃这些特殊用户,只得累生死调IE6兼容。

今天这个IE6出现的错误比较独特,页面打开后跟其它页面效果差别非常大,等于说是IE6下完全没有样式的HTML页面。首先得确定问题方向,因为样式文件是外链的,所以我在样式文件里给body来个背景颜色,结果发现除IE6以外其它浏览器背景都能正常变色。于是我在html页面直接加上body样式,这下IE6才生效。

【国内直连ChatGPT 29元起】
国内直连ChatGPT,Plus会员每月29元起,支持最新o1模型探索更多领域,无需注册OpenAI账号。

html页面加写样式对于IE6有效,CSS文件写样式对于IE6无效只能说明IE6下无法加载样式文件。

一开始怀疑是书写格式有问题,把一行行HTML代码规范后发现还是在IE6下无法加载样式文件。

问题开始陷入僵局中……

突然想到编码问题,使用工具看了一下,原来HTML页面使用UTF8编码,样式文件使用GBK编码,使用工具把样式文件转换成UTF8编码后问题解决。

  • 后面我自己写Demo测试没有重现,可能这个只是个别现象
  • HTML页面编码最好与样式文件编码一致
  • 样式文件内的@charset 声明有时候对IE6无效
  • 有关文档说编码不一致IE6下也能加载,我自己写测试的时候也没有问题,也有的说是因为编码不同又有中文导致
分享

TITLE: IE6不能加载样式,原来是编码导致!

LINK: https://www.qttc.net/225-ie6-cannot-load-css.html

NOTE: 原创内容,转载请注明出自琼台博客