来源:未知 时间:2018-06-15 00:07 作者:小飞侠 阅读:次
[导读] 随着技术日新月异的发展,我以为已经可以完全甩掉ie浏览器,驰骋在新技术的海洋里。却不想,ie兼容问题如影随行。 当然,尝试解决ie浏览器兼容问题,并不代表我会去拥护它。我想...
随着技术日新月异的发展,我以为已经可以完全甩掉ie浏览器,驰骋在新技术的海洋里。却不想,ie兼容问题如影随行。 当然,尝试解决ie浏览器兼容问题,并不代表我会去拥护它。我想做的只是为解决浏览器兼容提供一些个人思路,毕竟,很多公司还会有此类的需求。 一、明确你要兼容的浏览器范围 很简单,当你明确了要兼容的浏览器范围,不需要兼容的浏览器就可以一并处理了。例如:直接弹出提示,指引用户下载chrome,firefox等现代浏览器。简单粗暴,但却有效。 那么我们如何去过滤呢,这时候,条件注释就可以上场了,用法如下: <!--[if !IE]> 除IE外都可识别 <![endif]--> <!--[if IE]> 所有的IE可识别 <![endif]--> <!--[if IE 6]> 仅IE6可识别 <![endif]--> <!--[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]--> <!--[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]--> <!--[if IE 7]> 仅IE7可识别 <![endif]--> <!--[if lt IE 7]> IE7以及IE7以下版本可识别 <![endif]--> <!--[if gte IE 7]> IE7以及IE7以上版本可识别 <![endif]--> <!--[if IE 8]> 仅IE8可识别 <![endif]--> <!--[if IE 9]> 仅IE9可识别 <![endif]--> 符号解释: !(非):[if !IE] lt(小于):[if lt IE 6] lte(小于或等于):[if lte IE 6] gt(大于):[if gt IE 8] gte(大于或等于):[if gte IE 9] &(与):[if (gt IE 6)&(lt IE 8)] |(或):[if (IE 6)|(IE 7)] 嗯,不错,一大半的负担被卸掉了。 因为我足够幸运,只需要解决ie9浏览器的兼容问题。所以,可以这么写: <!--[if lte IE 8]><script src="/zh/assets/js/ie-warning.js"></script><![endif]--> js中设置了cookie和url重定向,引导用户去下载chrome浏览器,这里就不细说了。 当然,兼容问题哪有这么容易就搞定的,我们继续往下走~ 二、检查页面中的伪类和伪元素 这里还是以ie9示例,下面列出ie9对伪类的支持情况: //ie9不支持的伪类和伪元素 :default :valid :invalid :in-range ut-of-range :required ptional :read-only :read-write ::before ::after ::first-letter ::first-line ::value ::choices ::repeat-item ::repeat-index http://jartto.wang/2016/12/06/talk-about-ie-compatible-over-again/ |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com