完美兼容IE6 IE7 FF的通用方法
2011-11-15 20:34
218 查看
本文和大家重点讨论一下完美兼容IE6 IE7 FF的通用方法,IE的兼容性问题有很多值得学习的地方,相信通过本文的学习你对IE兼容性有更加深刻的认识。
完美兼容IE6 IE7 FF的通用方法
关于CSS对各个浏览器兼容已经是老生常谈的问题了,网络上的教程遍地都是.以下内容没有太多新颖,纯属个人总结,希望能对初学者有一定的帮助.
一、CSSHACK
以下两种方法几乎能解决现今所有HACK.
1、important
随着IE7对!important的支持,!important方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.)
2、IE6/IE77对FireFox
*+html与*html是IE特有的标签,firefox暂不支持.而*+html又为IE7特有标签.
注意:
*+html对IE7的HACK必须保证HTML顶部有声明:
二、万能float闭合(非常重要!)
关于clearfloat的原理可参见[HowToClearFloatsWithoutStructuralMarkup]
将以下代码加入GlobalCSS中,给需要闭合的div加上class="clearfix"即可,屡试不爽.
三、其他兼容技巧
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
完美兼容IE6 IE7 FF的通用方法
关于CSS对各个浏览器兼容已经是老生常谈的问题了,网络上的教程遍地都是.以下内容没有太多新颖,纯属个人总结,希望能对初学者有一定的帮助.
一、CSSHACK
以下两种方法几乎能解决现今所有HACK.
1、important
随着IE7对!important的支持,!important方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.)
<style> #wrapper { width:100px!important;/*IE7+FF*/ width:80px;/*IE6*/ } </< span>style>
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,注意顺序*/ } </< span>style>
注意:
*+html对IE7的HACK必须保证HTML顶部有声明:
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
二、万能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*/ </< span>style>
三、其他兼容技巧
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
相关文章推荐
- CSS完美兼容IE6_IE7_FF的通用方法
- css 兼容ie6,ie7,ff的fixed,元素上下端固定定位方法
- 获取滚动条位置的通用方法--兼容ie6,ie7,firefox2,firefox3,chrome等
- CSS完美兼容IE6IE7FF的通用方法
- 获取滚动条位置的通用方法--兼容ie6,ie7,firefox2,firefox3,chrome等
- min-height最小高度实现的解决方法,(兼容IE6、IE7、FF、Chrome)
- css 兼容ie6,ie7,ff的fixed,元素上下端固定定位方法
- 获取滚动条位置的通用方法--兼容ie6,ie7,firefox2,firefox3,chrome等
- css 兼容ie6,ie7,ff的fixed,元素上下端固定定位方法
- 兼容IE6 IE7 IE8 FF Opera Chrome 的最精简PNG透明方法
- DIV+CSS解决IE6,IE7,IE8,FF兼容…
- CSS兼容IE6,IE7,FF的技巧
- 去除链接元素的虚线框 兼容IE7、IE6、FF
- ie6,ie7,ff 的css兼容hack写法
- DIV+CSS解决IE6,IE7,IE8,FF兼容问题
- div+css 兼容ie6 ie7 ie8 ie9和FireFox Chrome等浏览器方法[ZT]
- CSS完美兼容IE6/IE7/FF的通用方法
- CSS完美兼容IE6/IE7/FF的通用方法
- CSS完美兼容IE6/IE7/FF的通用方法
- div+css 兼容ie6 ie7 ie8 ie9和FireFox Chrome等浏览器方法