解决IE低版本对H5兼容性问题


title: 解决IE低版本对H5兼容性问题 time: 2019-6-9

兼容处理(解决IE低版本对H5的兼容问题)

  1. 在不支持HTML5新标签的浏览器里,会将这些新的标签解析成行内元素(inline)对待,所以我们只需要将其转换成块元素(block)即可使用,但是在IE9版本以下,并不能正常解析这些新标签,但是却可以识别通过document.createElement('tagName')创建的自定义标签,于是我们的解决方案就是将HTML5的新标签全部通过document.createElement('tagName')来创建一遍,这样IE低版本也能正常解析HTML5新标签了。

  2. 处理方式:在实际开发中我们更多采用的是通过检测IE浏览器的版本来加载三方的一个JS库来解决兼容问题(测试在IE下面的兼容性:ieTester软件的使用)

, 主要是针对于ie低版本的,也就是只有低版本ie才执行才对。

<!--[if lt IE 9]>

&emsp;&emsp; <script src="js/respond.js"></script>
     
 &emsp;&emsp;<script src="js/html5shiv.min.js"></script>

<![endif]—>
复制代码

respond.js 目的是为了解决 ie低版本的CSS3媒体查询 media query

==条件注释 了解 示例==

<!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]-->
<!--[if IE]> 所有的IE可识别 <![endif]-->
<!--[if IE 6]> 仅IE6可识别 <![endif]-->
<!--[if lte IE 6]> IE6以及IE6以下版本可识别 <![endif]-->
<!--[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]-->
<!--[if IE 7]> 仅IE7可识别 <![endif]-->
<!--[if lt IE 7]> IE7以下版本可识别 <![endif]-->
<!--[if gt IE 7]> IE7以上版本可识别 <![endif]-->
<!--[if IE 8]> 仅IE8可识别 <![endif]-->
<!--[if IE 9]> 仅IE9可识别 <![endif]-->
复制代码

示例:

<!-- 条件注释  ie 6.7.8 能执行,其余浏览器忽略这句话 -->
<!--[if lt IE 9]>   

   <script src="js/html5shiv.min.js"></script> 

<![endif]-->
复制代码

附件: html5shiv.min.js文件

respond.js文件

转载于:https://juejin.im/post/5cfc64bdf265da1bc5525630

猜你喜欢

转载自blog.csdn.net/weixin_33834075/article/details/91448608