IE8兼容性问题
由于业务的需要,我们竟然还要支持IE8,听着就让人很心酸呀。不过在进行适配的过程中,会发现还是有一定规律的,基本上帮相关问题改了,页面也就能正常显示了。下面就总结下对IE8适配过程中所进行的修改。
1. CSS不支持 rgb() 以及 rbga() 函数
建议在IE8上使用纯色而非带透明度的颜色,如果一定要使用有透明度的颜色的话,可以使用 filter:alpha(opacity=xx);来模拟,但需要注意,用 filter 设置的透明度是对整体设置的,跟 opacity 一样,而非仅仅对颜色起作用。
如
background-color: rgba(102, 102, 102, 0.2);
可以改为
background-color: #666666;
background-color: rgba(102, 102, 102, 0.2);
filter: alpha(opacity=20); /*support iE8*/
2. :hover 样式无效,因为在IE8上只有 <a> 标签支持 :hover 样式
建议将 :hover 样式放在 <a> 上,如果一定要在 <span>,<li> 等标签上使用,可以利用 JavaScript 的 mouseenter 、mouseleave 等事件来设置样式。
3. IE8仅部分支持CSS3选择器,如 element1~element2 、 element1+element2 、 [attr^=val] , [attr$=val] 以及 [attr*=val] ,不支持 :last-child 、 :not() 等选择器,所以在选择器的使用上需要注意
4. IE8不支持 background-size
有时为了使图片看起来更加清晰,部分背景会使用2倍图,然后通过设置容器的大小以及 background-size 等属性使图片缩放到正确的尺寸,但由于IE8不支持 background-size 属性,所以使用2倍图会超出容器大小,所以在IE8上要用CSS进行 hack 处理。
background-image: url(images/logo@2x.png);
background-image: url(images/logo.png) \9; /* ie8 hack,在ie8上使用1倍图 */
background-size: contain;
需要注意,在less中要写成 background-image: url(images/logo.png) ~"\9";
5. IE8中为 <a> 的 href 属性设置 mailto: xxxx; 时,浏览器会将 <a> 的显示的内容替换成 href 属性。
如 <a href="mailto:service@163.com">咨询</a> ,在IE8上会显示成 <a href="mailto:service@163.com">mailto:service@163.com</a> 。
这个是IE的一个BUG,正常来说,不解决也不会有什么问题,但是如果一定要精益求精的话的话,可以用JavaScript对其进行修改。
IE8兼容性问题的更多相关文章
- bootstrap IE8 兼容性处理
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- CSS- ie6,ie7,ie8 兼容性写法,CSS hack写法
css ie6,ie7,ie8 兼容性写法,CSS hack写法 margin-bottom:40px; /*ff的属性*/margin-bottom:140px\9; /* IE6 ...
- IE8兼容性经验小结
DOCTYPE 首先需要确保HTML页面开始部分要有DOCTYPE声明.DOCTYPE告诉浏览器使用什么样的HTML或XHTML规范来解析HTML文档,具体会影响: 1.对标记,attributes, ...
- ie8兼容性总结
DOCTYPE 首先需要确保你的HTML页面开始部分要有DOCTYPE声明.DOCTYPE告诉浏览器使用什么样的HTML或XHTML规范来解析HTML文档,具体会影响: 对标记.attributes ...
- ie8兼容性(不支持trim 、readonly光标、乱码encodeURI())
IE8下String的Trim()方法失效的解决方案 1.用jquery的trim()方法,$.trim(str)就可以了. 2.String扩展: 第一种 String.prototype.trim ...
- 记录遇到的IE8兼容性问题汇总
1,伪元素:first-child不起作用,需要单独指定样式名称 2,透明度表示方法,尤其在函数中表示 @mixin opacity($value) { -webkit-opacity: $value ...
- 解决Easyui1.3.3 IE8兼容性问题
事先声明:项目在Firefox和Chrome上完美运行,在MSIE9.MSIE10上基本没问题,但是放在MSIE8上面运行问题就出来了.登录系统后,系统页面跳动,导致系统无法使用:我使用的是Easyu ...
- ueditor ie8兼容性问题
ie8情况下,在进入加载有uEditor编辑器页面时候,不显示工具栏,会提示ueditor 缺少对象或者出现错误 1.引用Ueditor的js 的时候用 绝对路径 网上搜出来的一种解决 ...
- IE8 兼容性总结
rgba 颜色格式 IE8 不支持 rgba(0, 0, 0, .5) 这种颜色格式. 解决方案:可以利用一张半透明的 png 图片来兼容 IE8. flexbox 根据 caniuse 给出的数据, ...
- IE8兼容性调试及IE 8 css hack
做网站开发,一提到IE,就会让人头大,有一肚子的牢骚要发:微软为什么不跟着国际标准走呢,总是独树一帜,搞出那么多问题来.IE的firebug调试工具也不太好用,尤其是低版本的IE,更是让人头疼. 最近 ...
随机推荐
- 孤荷凌寒自学python第六天 列表的嵌套与列表的主要方法
孤荷凌寒自学python第六天 列表的嵌套与列表的主要方法 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) (同步的语音笔记朗读:https://www.ximalaya.com/keji/1 ...
- HDU 1709 母函数天平问题 可出现减法的情况 The Balance
The Balance Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- edp 基于node.js和npm的前端开发平台
edp能做什么? 简洁的项目创建及包管理,多种工具进行本地调试,快速项目构建及代码检测,可扩展插件... 1. 安装 $ npm install -g edp 2. 包管理-导入依赖包 >edp ...
- Axure+SVN——实现多人团队开发
最近进行考试系统重构,一个小组十几个人,这么多人要同时搞需求画原型.这样原本的合作开发工具SVN已经不能满足现在的需求了,这是就找到了一个新的方法--Axure+SVN. 在SVN服务器端建立一个空的 ...
- 【Luogu】P2154虔诚的墓主人(树状数组)
题目链接 这题就是考虑我们有这样一个情况
- oracle 查看表空间的脚本
SELECT upper(f.tablespace_name) "表空间名", d.Tot_grootte_Mb "表空间大小(M)", d.Tot_groot ...
- 3.5 实例讲解Lucene索引的结构设计
3.2节我们已经运行了一个Lucene建立索引的小程序,这一节我们就以这个小程序为例讲解一下Lucene建立索引的过程. import java.nio.charset.StandardCharset ...
- Linux命令之rhn_check
NAME rhn_check - check for queued actions on RHN and execute them SYNOPSIS /usr/sbin/rhn_check [-v] ...
- delete zone and cfgsave on brocade by CMD
brocade:user> cfgshowDefined configuration: cfg: cfg001 AMS_ESX_HBA1; AMS_ESX_HBA2; HUS_ESX_HBA1; ...
- webpack最佳入门实践系列(3)
6.使用图片 6.1.尝试在css中引入图片 在src目录下新建css文件夹,并且在css文件夹下创建app.css文件,在src目录下新建images文件夹,放入一张图片,在app.css中引入这张 ...