浏览器 CSS 兼容写法的测试总结
做前端最讨厌的就是 IE6,7,8,虽然被淘汰的浏览器,但是在中国用户仍然很多,不可能像国外网站一样直接就不管它了,这样会流失很多流量啊。
现在有了IE9,IE10还好些,几乎和 Chrome,Firefox 差别不大了,但是IE6,IE7,IE8还是要做单独兼容的,这里总结下兼容方法:
对于 IE6、IE7、IE8 进行 CSS 兼容方法可以看看这篇文章
http://blog.csdn.net/zhouzme/article/details/18901657
以下方法均在 IE6、IE7、IE8、IE9、Chrome、Firefox 中测试过,其他如 Opera 浏览器等感觉国内没什么用户的就未涉及
对进行应用开发的另外说明:
- 360 安全浏览器使用的是 IE7 内核,
- 08.22补充:今天看了看360的告别IE6站长活动,他的浏览器最近好像升级到IE8内核了,估计安全桌面内核应该也升级为 IE8了
- 360 安全桌面应用使用的也是 IE7 内核,
- 腾讯的 Qplus 桌面应用的IE模式使用的是 IE8 内核
以前对 IE9 以下兼容方法是直接在 HTML 的 head 头里面放个 IE 的兼容模式代码
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7,IE=EmulateIE9" />
这样做就只需要兼容IE6,IE7。但是无法通过 W3C 验证的,还有些其他的缺陷,总觉得不太好,所以放弃了。
注意若要用此设置是不能通过 IE 特有的 HTML 浏览器判断语法的来控制的,如:
<!--[if lt IE 9]><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /><![endif]-->
这样写是没有用处的,而且必须是放在 head 的头部否则也不会识别
CSS兼容方法:
- 仅 IE6 和 IE7 识别,使用 * 星号
- 仅 IE6 识别,使用 _ 下划线区别
- 仅 IE7 识别,使用 + 加号
- 仅 IE8 和 IE9 识别,使用 \0 符号
- 仅 IE9 识别,使用 \9\0 ,同上, 多次测试后发现无效,后面有补充
- 仅 IE6 不能识别: !important ,
- 全部 IE 均可识别 \9 ,
使用顺序:
#test {
color:green !important;
color:#EEE;
color:#0F0\9;
color:#09F\0;
color:#F00\9\0;
*color:#000000;
+color:#630;
_color:#FF0;
}
08.22 补充:
针对IE9兼容之前的写法有问题
:root #test { color:#F00\0; }
这次测试发现貌似只有这样写才能真正的只让 IE9 识别
以上CSS将在 ie6 中显示 #FF0 颜色, IE6以上版本和 chrome、firefox 中显示 green,
- 去除 !important 后
- IE6, 显示 #FF0
- IE7, 显示 #630
- IE8, 显示 #09F
- IE9, 显示 #F00
- chrome、firefox 中显示 #EEE ,
以上的各种特殊符号对浏览器兼容基本上就够了,唯一缺憾是无法区别 chrome 和 firefox,不过还好他们两个的样式基本上差不多的,对于一些特殊的 css 属性可以添加各浏览器私有的属性前缀进行区别,但仅限部分样式有效
- -webkit- Chrome ...
- -moz- Firefox
- -ms- Microsoft
- -o- Opera
OK,对个浏览器的兼容大概 CSS 区别显示就总结到此,以后再慢慢添加具体的某些兼容方法。
浏览器 CSS 兼容写法的测试总结的更多相关文章
- Normalize.css源码注释翻译&浏览器css兼容问题的理解
版本v5.0.0源码地址: https://necolas.github.io/normalize.css/5.0.0/normalize.css 翻译版: /*! normalize.css v5. ...
- 主流浏览器css兼容问题的总结
最近又搞了一波网站的兼容,由于要求ie浏览器还是要兼容到ie8,所以调起来还是各种蛋疼. 现在就post一些做兼容的总结,可能不够全面,但是可以告诉大家如何避过一些坑.主要测试了chrome,fire ...
- 浏览器CSS兼容
一.<important 在IE6及FF中的使用>.box1 {width:150px !important;} .box1 {width:250px;} !important是说这个设置 ...
- 【转载】各浏览器CSS兼容问题
CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并 整理了一下.对于web2.0的过度,请尽量用xhtml ...
- 各浏览器CSS兼容问题
CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并 整理了一下.对于web2.0的过度,请尽量用xhtml ...
- DIV水平垂直居中的CSS兼容写法
DIV水平垂直居中,非IE浏览器可以用CSS3来处理,IE浏览器中分别处理IE6和/IE7.IE8.IE9. 在IE低版本中,虽然大致上没有问题,但还是有一些细微的显示问题. 示例如下: <!D ...
- css兼容写法
css3 1.box-shadow: filter:progid:DXImageTransform.Microsoft.Shadow(color=#,direction=,strength=);/*兼 ...
- ie浏览器css兼容样式实例
background-color:#f00;/*all*/background-color:#0ff\0;/* ie 8/9 */background-color:#0f0\9\0;/* ie9 */ ...
- javascript:currentStyle和getComputedStyle的兼容写法
currentStyle:获取计算后的样式,也叫当前样式.最终样式. 优点:可以获取元素的最终样式,包括浏览器的默认值,而不像style只能获取行间样式,所以更常用到. 注意:不能获取复合样式如bac ...
随机推荐
- C#中转义字符
编程中很多细节问题我们都要十分的注意,要不一个小小的字母错误就能引起程序的无法运行. C#中转义字符分2中,一种是\,一种是@. @符号在C#中有两个作用作用1.在字符串的前面加@表示取消字符串中的转 ...
- 标签<a>的注意事项1
使用a标签时,其子元素可以为其他元素,但是不能包含<a>标签,否则会造成布局改变! 因此请尽量不要在a标签里放太多子元素,可以在外层套一个div,其他子元素放在a标签同级下. 正确布局: ...
- SQL SERVER BUG--Alwayson日志备份报错
数据库版本 SQL SERVER 2012 企业版,版本号:11.0.5582.0 问题场景: 数据库配置Alwayson环境,同机房2节点同步自动切换+跨机房异步,在异步机房中选取同一节点做完整备份 ...
- elasticsearch查询模板
{ "from":#from#, "size":#size#, "_source":#source#, "query": ...
- 【NOIP2013】DAY1题解+代码
T1 傻逼快速幂,敲敲就过了. 我跟你们讲个笑话当时我以为这个数据范围过不了于是想出了求GCD再推规律什么的magic方法中途还咨询了某个学长. 然后怎么想都是不可做. ……直到我发现我昨年的代码一个 ...
- To the end
身为一名初二狗的我也走过了半年.不管怎么说人生中也没有几个半年嘛.从九月到现在快四个月了,我也离中考越来越近了/郁闷/.但是还是要好好过唔.不过我想起这半学期还是挺充实的,至少没有浪费太多的时间.有些 ...
- 鼠标形状css样式
鼠标形状css样式 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- http协议的状态码 403 404 301 302 200 500 502 504 报错显示
在网站建设的实际应用中,容易出现很多小小的失误,就像MySQL当初优化不到位,影响整体网站的浏览效果一样,其实,网站的常规http状态码的表现也是一样,Google无法验证网站几种解决办法,提及到由于 ...
- EXCEL 数字统一转换成文本
将excel中的数字统一转换成文本形式.即添加‘. 1.点击数据-分列. 2.分隔符号-下一步. 3.选择文本识别符号,如“‘”分号. 4. 选中文本-完成.
- usaco 2.2.4 生日派对灯(最近写题碰到的,虽然知道现在写这个有点晚了)
经过分析,他看似很多的开灯的方法其实合并起来就只有八个. 首先,一个开关在执行的时候只能按一次(因为你就算按了两次就相当于一次也没有按). 当一个都不按的时候 当然就只有一种:不按. 当按一下的时候 ...