完美实现IE6/IE7/FF浏览器兼容通用方法

开发 前端
本文向大家描述一下完美实现IE6/IE7/FF浏览器兼容通用方法,随着IE7对!important的支持,!important方法现在只针对IE6的HACK,*+html与*html是IE特有的标签,firefox暂不支持,而*+html又为IE7特有标签。

关于CSS对各个浏览器兼容已经是老生常谈的问题了,这里向大家描述一下***实现IE6/IE7/FF浏览器兼容通用方法,相信本文介绍一定会让你有所收获。

***实现IE6/IE7/FF浏览器兼容通用方法

关于CSS对各个浏览器兼容已经是老生常谈的问题了,网络上的教程遍地都是.以下内容没有太多新颖,纯属个人总结,希望能对初学者有一定的帮助。

一、CSSHACK

以下两种方法几乎能解决现今所有HACK.

1、important

随着IE7对!important的支持,!important方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.)

  1. <style> 
  2. #wrapper  
  3. {  
  4. width:100px!important;/*IE7+FF*/  
  5. width:80px;/*IE6*/  
  6. }  
  7. </style> 
  8.  

 

2、IE6/IE77对FireFox

*+html与*html是IE特有的标签,firefox暂不支持,而*+html又为IE7特有标签。

  1. <style> 
  2. #wrapper  
  3. {  
  4. #wrapper{width:120px;}/*FireFox*/  
  5. *html#wrapper{width:80px;}/*ie6fixed*/  
  6. *+html#wrapper{width:60px;}/*ie7fixed,注意顺序*/  
  7. }  
  8. </style> 
  9.  

注意:
*+html对IE7的HACK必须保证HTML顶部有如下声明:
 

  1. <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"   
  2.  
  3. "http://www.w3.org/TR/html4/loose.dtd"> 

二、***float闭合

关于clearfloat的原理可参见[HowToClearFloatsWithoutStructuralMarkup],将以下代码加入GlobalCSS中,给需要闭合的div加上class="clearfix"即可,屡试不爽.

  1. <style> 
  2. /*ClearFix*/  
  3.  
  4. .clearfix:after  
  5. {  
  6. content:".";  
  7. display:block;  
  8. height:0;  
  9. clear:both;  
  10. visibility:hidden;  
  11. }  
  12. .clearfix  
  13. {  
  14. display:inline-block;  
  15. }  
  16. /*HidefromIEMac*/  
  17. .clearfix{display:block;}  
  18. /*EndhidefromIEMac*/  
  19. /*endofclearfix*/  
  20. </style> 
  21.  

 三、其他浏览器兼容技巧

1、FF下给div设置padding后会导致width和height增加,但IE不会.(可用!important解决)

2、居中问题.

1).垂直居中.将line-height设置为当前div相同的高度,再通过vertical-align:middle.(注意内容不要换行.)
2).水平居中.margin:0auto;(当然不是***)
3,若需给a标签内内容加上样式,需要设置display:block;(常见于导航标签)
4,FF和IE对BOX理解的差异导致相差2px的还有设为float的div在ie下margin加倍等问题.
5,ul标签在FF下面默认有list-style和padding.***事先声明,以避免不必要的麻烦.(常见于导航标签和内容列表)
6,作为外部wrapper的div不要定死高度,***还加上overflow:hidden.以达到高度自适应.
7,关于手形光标.cursor:pointer.而hand只适用于IE.

【编辑推荐】

  1. JavaScript巧解IE6至IE8兼容问题
  2. JavaScript代码轻松实现DIV圆角
  3. 网页排版中IE6,IE7,Firefox浏览器兼容性写法
  4. CSS属性display:inline-block使用揭秘
  5. Firefox、IE7、IE6浏览器兼容问题概念解析

 

责任编辑:佚名 来源: soidc.net
相关推荐

2010-08-17 16:18:23

IE6IE7FF

2010-08-20 12:45:41

IE6IE7Firefox

2010-08-18 13:45:07

IE6IE7FF

2010-08-24 09:46:57

IE6IE7FF火狐

2010-08-27 15:38:21

兼容IE6IE7

2010-08-17 16:27:52

IE6IE7IE8

2010-08-27 13:26:16

IE6IE7FF

2010-09-15 11:18:27

IE6IE7火狐

2010-09-15 11:32:37

IE6IE7浏览器兼容性

2010-08-17 15:07:48

IE6IE7IE8

2010-08-20 09:25:11

IE6IE7IE8

2010-08-18 14:21:48

FirefoxIE7IE6

2010-08-20 08:45:55

IE6IE7IE8

2010-09-15 10:19:12

IE6IE7IE8

2011-06-03 15:41:27

CSS HACK

2010-08-19 16:38:33

IE6IE7Firefox

2010-08-18 14:54:32

IE6IE7Firefox

2010-08-20 13:08:41

IE6IE7IE8

2010-09-06 15:06:29

IE6IE7Firefox

2010-08-18 15:22:28

IE6IE7Firefox
点赞
收藏

51CTO技术栈公众号