原文地址: 小昱博客 - 浏览器兼容性杂谈 转载请注明出处,谢谢!javascript
GitHub官方地址css
<!--[if IE]> <script src="html5shiv.js"></script> <![endif]-->
Respond.js让IE6-8支持CSS3 Media Queryhtml
GitHub官方地址html5
1.在css中正经常使用 min/max-width media queriesjava
@media screen and (min-width: 480px){ ...styles for 480px and up go here }
2.引入respond.min.js,但要在css的后面(越早引入越好,在ie下面看到页面闪屏的几率就越低,由于最初css会先渲染出来,若是respond.js加载得很后面,这时从新根据media query解析出来的css会再改变一次页面的布局等,因此看起来有闪屏的现象)css3
<!--[if IE]> <script src="respond.js"></script> <![endif]-->
1.把head中全部 的css路径取出来放入数组git
2.而后遍历数组一个个发ajax请求github
3.ajax回调后仅分析response中的media query的min-width和max-width语法,分析出viewport变化区间对应相应的css块web
4.页面初始化时和window.resize时,根据当前viewport使用相应的css块。ajax
优势:压缩后仅1k,不跨域时性能ok,只需引入respond.js通用易用
缺点:仅支持media query的min-width和max-width(用于响应式够用);支持跨域,虽然配置有点麻烦,实现跨域代价高并且有闪屏体验欠佳。
Selectivizr的使用很是的简单,可是并不能直接使用,在使用前须要先加载下列框架中的任何一个:JQuery、dojo、prototype、Yahoo YUI、DOMAssistant、mootools、NVMatcher。须要注意的是Selectivizr对各个框架的支持程度不一,具体可查看官方网站。 而后在页面里引用Selectivizr便可。
<script type="text/javascript" src="[JS library]"></script> <!--[if lt IE 9]> <script type="text/javascript" src="selectivizr-min.js"></script> < ![endif]-->