2022年2022年浏览器的兼容问题 .pdf
《2022年2022年浏览器的兼容问题 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年浏览器的兼容问题 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、什么是浏览器兼容:当我们使用不同的浏览器(Firefox IE7 IE6)访问同一个网站,或者页面的时候,会出现一些不兼容的问题,在这种浏览器下显示正常,在另一种下就乱了,我们在编写CSS 的时候会很恼火,刚修复了这个浏览器的问题,结果另外一个浏览器却出了新问题。好吧,我服了行吧, 那我就利用你们的不兼容各写一段css, 让他们各执行各的,呵呵。一、!important (功能有限 ) 随着 IE7 对!important的支持, !important 方法现在只针对IE6 的兼容 .( 注意写法 .记得该声明位置需要提前 .) 例如: #example width: 100px !impor
2、tant; /* IE7+FF */ width: 200px; /* IE6 */ 二、CSS HACK 的方法 (新手可以看看,高手就当路过吧) 首先需要知道的是:所有浏览器通用 height: 100px; IE6 专用 _height: 100px; IE7 专用 *+height: 100px; IE6 、IE7 共用 *height: 100px; IE7 、FF 共用 height: 100px !important; 例如:#example height:100px; /* FF */ * html #example height:200px; /* IE6 */ *+html
3、 #example height:300px; /* IE7 */ 下面的这种方法比较简单举几个例子:1、IE6 - IE7+FF #example height:100px; /* FF+IE7 */ _height:200px; /* IE6 */ 其实这个用上面说的第一种方法也可以#example height:100px !important; /* FF+IE7 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - h
4、eight:200px; /* IE6 */ 2、IE6+IE7 - FF #example height:100px; /* FF */ *height:200px; /* IE6+IE7 */ 3、IE6+FF - IE7 #example height:100px; /* IE6+FF */ *+height:200px; /* IE7 */ 4、IE6 IE7 FF 各不相同#example height:100px; /* FF */ _height:200px; /* IE6 */ *+height:300px; /* IE7 */ 或:#example height:100px;
5、 /* FF */ *height:300px; /* IE7 */ _height:200px; /* IE6 */ 需要注意的是, 代码的顺序一定不能颠倒了,要不又前功尽弃了。 因为浏览器在解释程序的时候, 如果重名的话, 会用后面的覆盖前面的, 就象给变量赋值一个道理,所以我们把通用的放前面,越专用的越放后面。解释一下 4 的代码:读代码的时候,第一行 height:100px; 大家都通用,IE6 IE7 FF 都显示 100px 到了第二行 *height:300px; FF不认识这个属性, IE6 IE7都认,所以 FF 还显示 100px , 而 IE6 IE7把第一行得到的 h
6、eight属性给覆盖了,都显示 300px 到了第三行 _height:200px;只有 IE6 认识,所以 IE6 就又覆盖了在第二行得到的 height,最终显示 200px 这样,三个浏览器都有自己的height属性了,就不会出现读取错味的情况,另外:*+html 对 IE7 的兼容 必须保证 HTML 顶部有如下声明:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - !DOCTYPE HTML PUBLIC -/W3C/D
7、TD HTML 4.01 Transitional/ENhttp:/www.w3.org/TR/html4/loose.dtd三、使用 IE 专用的条件注释!- 其他浏览器- link rel=stylesheet type=text/css href=css.css /!-if IE 7!- 适合于 IE7 - link rel=stylesheet type=text/css href=ie7.css /!endif-!-if lte IE 6!- 适合于 IE6 及以下 - link rel=stylesheet type=text/css href=ie.css /!endif-貌似要
8、编三套 css ,我还没用过,先粘过来再说IE 的 if 条件 Hack 1. !-if !IE!- 除 IE 外都可识别!- !endif-2. !-if IE 所有的 IE 可识别 !endif-3. !-if IE 5.0 只有 IE5.0可以识别 !endif-4. !-if IE 5 仅 IE5.0与 IE5.5 可以识别!endif-5. !-if gt IE 5.0 IE5.0以及 IE5.0以上版本都可以识别!endif-6. !-if IE 6 仅 IE6 可识别 !endif-7. !-if lt IE 6 IE6 以及 IE6 以下版本可识别!endif-8. !-if
9、gte IE 6 IE6 以及 IE6 以上版本可识别!endif-9. !-if IE 7 仅 IE7 可识别 !endif-10. !-if lt IE 7 IE7 以及 IE7 以下版本可识别!endif-11. !-if gte IE 7 IE7 以及 IE7 以上版本可识别!endif-注:gt = Great Then 大于 = 大于号lt = Less Then 小于 = 小于号名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - -
10、- - - gte = Great Then or Equal 大于或等于lte = Less Then or Equal 小于或等于四、css filter的办法 (据作者称是从国外某经典网站翻译过来的说) 新建一个 css 样式如下:#item width: 200px; height: 200px; background: red; 新建一个 div, 并使用前面定义的css 的样式:div some text here/div 在 body 表现这里加入 lang 属性,中文为 zh :body lang=en现在对 div 元素再定义一个样式:*:lang(en) #item bac
11、kground:green !important; 这样做是为了用 !important覆盖原来的 css 样式,由于:lang选择器 ie7.0 并不支持,所以对这句话不会有任何作用,于是也达到了 ie6.0下同样的效果 ,但是很不幸地的是 ,safari同样不支持此属性 ,所以需要加入以下css 样式:#item:empty background: green !important :empty选择器为 css3 的规范 ,尽管 safari 并不支持此规范 ,但是还是会选择此元素,不管是否此元素存在 ,现在绿色会现在在除ie 各版本以外的浏览器上。名师资料总结 - - -精品资料欢迎下载
12、 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - 五、FLOAT 闭合(clearing float)网页在某些浏览器上显示错位很多时候都是因为使用了float 浮动而没有真正闭合,这也是 div 无法自适应高度的一个原因。如果父div 没有设 float而其子 div 却设了 float的话,父 div 无法包住整个子 DIV ,这种情况一般出现在一个父 DIV 下包含多个子 DIV 。解决办法:、给父 DIV 也设上 float( 不要骂我,我知道是废话 ) 2、在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年浏览器的兼容问题 2022 浏览器 兼容问题
限制150内