让网站支持老版本IE6、7、8、9浏览器的3种解决方案
1.htmlshiv.js
Remy的 HTML5shiv通过JavaScript 来创建HTML5元素(如 main, header, footer等).在某种程度上通过JavaScript 创建的元素是 styleable(可样式)的。我们可以花很多时间来思考其运行原理,但谁会在乎呢?这种策略在所有产品网站上仍然是必须使用的.
代码如下:
1 <!--[if lt IE 9]> 2 <script src="dist/html5shiv.js"></script> 3 <![endif]-->
2.selectivizr.js
Selectivizr.js 是一个不可思议的资源,用于填充不支持的CSS选择器和属性,包括重要的 last-child。在最近的重设计中,我嵌入了 selectivizr,并在更老的 IE 浏览器上也不会错过任何细节。下面是实现代码:
代码如下:
1 <!--[if lte IE 8]> 2 <script src="js/libs/selectivizr.js"></script> 3 <![endif]-->
只在老IE时才加载。
3.<html> Conditional Comments
下面这样最土的情况你肯定看到过。但无论丑陋与否,事实上这段代码完全按预期的方式运行:
代码如下:
1 <!DOCTYPE html> 2 <!--[if lt IE 7 ]> <html class="ie6" lang="en"> <![endif]--> 3 <!--[if IE 7 ]> <html class="ie7" lang="en"> <![endif]--> 4 <!--[if IE 8 ]> <html class="ie8" lang="en"> <![endif]--> 5 <!--[if IE 9 ]> <html class="ie9" lang="en"> <![endif]--> 6 <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en"> <!--<![endif]-->