为了压缩html代码,我们常常会去掉"HTTP或者HTTPS",即去掉url中的http(s)协议头,以节省空间,但这样使用后发现IE7,IE8会出现对同1个CSS加载2次的BUG。
测试:
正常的CSS加载代码写法:
这样写大家都知道加载是不会有任何问题的,所以也不贴监控图解释了。
压缩后,心里暗爽,html代码又小了,可是用httpwatch监控一下IE8就发现问题了,测试代码如下(加上了js和image为了方便进行比较):
test
httpwatch监控图:
oh shit,CSS竟然下载了二次,而且第二次还不是用的缓存,仍然响应200状态。
再把CSS代码改成绝对路径测试:
test 监控图:
一切正常了。
总结:
上面问题在IE8,IE7中都会出现,IE6、firefox、chrome都是正常的,而且只会对css有这个问题,js、image都正常,产生根本原因不详。
如果本机只有1个浏览器,不好进行测试,可以使用www.webpagetest.org在线进行测试,www.webpagetest.org同时支持IE7和IE8进行测试。
···
···