CSS兼容IE6,IE7,Firefox的技巧

开发 前端
CSS布局可以被大多数浏览器兼容,但是也有一些问题,比如在不同的浏览器上显示出来的CSS效果不尽相同,这里就向大家描述一下CSS兼容IE6,IE7,Firefox的技巧。

本文向大家描述一下CSS兼容IE6,IE7,Firefox的技巧,主要包括CSS HACK,***float闭合和其他兼容技巧三部分内容,相信本文介绍一定会让你有所收获。

CSS兼容IE6,IE7,Firefox的技巧

一、CSS HACK

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

1,!important

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

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

 2,IE6/IE77对FireFox

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

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

 注意:

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

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

二、***float闭合

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

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

 三、其他兼容技巧

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

2,居中问题.

1).垂直居中.将line-height设置为当前div相同的高度,再通过vertical-align:middle.(注意内容不要换行.)

2).水平居中.margin:0auto;(当然不是***)

3,若需给a标签内内容加上样式,需要设置display:block;(常见于导航标签)

4,Firefox和IE对BOX理解的差异导致相差2px的还有设为float的div在ie下margin加倍等问题.

5,ul标签在Firefox下面默认有list-style和padding.***事先声明,以避免不必要的麻烦.(常见于导航标签和内容列表)

6,作为外部wrapper的div不要定死高度,***还加上overflow:hidden.以达到高度自适应.

7,关于手形光标.cursor:pointer.而hand只适用于IE.

文章来自:电脑万事通_www.mypchelp.cn,详文参考:http://www.mypchelp.cn/it/200907/66678.shtml

【编辑推荐】

  1. 探究IE7beta2的CSS兼容性
  2. CSS样式表特点及嵌入网页的四种途径
  3. 三种方法实现CSS样式表插入
  4. IE6下margin双倍边距Bug处理办法
  5. 探究CSS高级语法中选择器分组和CSS继承用法
责任编辑:佚名 来源: mypchelp.cn
相关推荐

2010-09-16 13:17:31

IE6IE7IE8

2010-08-18 15:22:28

IE6IE7Firefox

2010-08-27 15:38:21

兼容IE6IE7

2010-08-18 15:57:14

IE6IE7IE8

2010-08-27 15:08:10

FirefoxIE6IE7

2010-08-30 09:35:35

IE6IE7Firefox

2010-09-16 13:33:47

IE6IE7IE8

2010-08-20 09:33:22

IE6IE7IE8

2010-08-18 10:24:51

IE6IE7IE8

2010-08-18 15:41:38

IE6E7Firefox

2010-08-20 12:45:41

IE6IE7Firefox

2010-08-20 09:39:43

IE6IE7Firefox

2010-08-19 16:06:15

2011-06-03 15:41:27

CSS HACK

2010-08-20 13:15:54

IE6IE7IE8

2010-08-19 16:38:33

IE6IE7Firefox

2010-08-18 10:37:16

IE6IE7IE8

2010-09-15 11:08:48

CSSIE6IE7

2010-08-20 08:45:55

IE6IE7IE8

2010-08-18 14:21:48

FirefoxIE7IE6
点赞
收藏

51CTO技术栈公众号