时间:2021-05-08
测试:
正常的CSS加载代码写法:
<link rel="stylesheet" href="http://www.test.com/main.css" type="text/css" />
这样写大家都知道加载是不会有任何问题的,所以也不贴监控图解释了。
在经过html压缩后(去掉http协议头),代码变成如下:
<link rel="stylesheet" href="//www.test.com/main.css" type="text/css" />
压缩后,心里暗爽,html代码又小了, 可是用httpwatch监控一下IE8就发现问题了,测试代码如下(加上了js和image为了方便进行比较):
复制代码代码如下:
<head>
<title>http test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="//www.test.com/css/main.css" type="text/css" />
<script type="text/javascript" src="//www.test.com/css/1.js"></script>
</head>
<body>
<h1>test</h1>
<img src="//www.test.com/css/d1.gif" />
</body>
httpwatch监控图:
oh shit,CSS竟然下载了二次,而且第二次还不是用的缓存,仍然响应200状态。
再把连接css代码的href加上http协议头试试:
复制代码代码如下:
<head>
<title>http test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="http://www.test.com/css/main.css" type="text/css" />
<script type="text/javascript" src="//www.test.com/css/1.js"></script>
</head>
<body>
<h1>test</h1>
<img src="//www.test.com/css/d1.gif" />
</body>
监控图:
一切正常了。
总结:
上面问题在IE8,IE7中都会出现,IE6、firefox、chrome都是正常的,而且只会对css有这个问题,js、image都正常,产生根本原因不详。
如果本机只有1个浏览器,不好进行测试,可以使用www.webpagetest.org在线进行测试,www.webpagetest.org同时支持IE7和IE8进行测试。
原文地址:http://www.stevesouders.com/blog/2010/02/10/5a-missing-schema-double-download/
PS: 虽然标题写的是翻译,但看了原文的就知道,其实根本不是翻译,是看了原文后本人根据原文进行了一翻测试,然后把测试结果写出来。
因为本人英语水平比较差,所以没有直接翻译。
转载请注明出处:http://www.cnblogs.com/BearsTaR/。 禁止商用!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文主要通过代码示例给大家介绍IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题;分步介绍,先给大家介绍IE7浏览器窗口大小改
经过本人查阅大量资料,实验N次终于找到了一个兼容ie6,ie7,ie8以及firefox的css透明滤镜的方法,且看我举例说明.html代码:复制代码代码如下:
ie7和ie6都不能识别display:table-cell;(但是支持display:block等css1的属性!)ie8以及以后版本可以识别!ie7和ie6
IE8正式版出来有一段日志了,但是针对ie8正式版的CSShack却很少,其实这是值得庆幸的,因为ie8修复了很多IE6和IE7的一些BUG,更加接近W3C标准
ie6对position:fixed不支持,网上有很多解决方法,有的在ie6,ie7上调试成功后,在ie8上又不好使,div层还是跟随滚动条浮动;以下总结方法,