DIV+CSS兼容IE6、IE7、Firefox方法探究.doc
上传人:sy****28 上传时间:2024-09-14 格式:DOC 页数:5 大小:45KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

DIV+CSS兼容IE6、IE7、Firefox方法探究.doc

DIV+CSS兼容IE6、IE7、Firefox方法探究.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

DIV+CSS兼容IE6、IE7、Firefox方法探究(1)DIV+CSS兼容IE6、IE7、Firefox方法探究在区别Firefox和IE时最常用的是!important方法,对于其他不同浏览器和浏览器的不同版本的的兼容性问题还有下面一些方法,比如:@import,注释,属性选择符,子对象选择符和voice-family等方法,这些方法在《CSS网站布局实录》中有讲述。◆下面是IE和Firefox的CSS兼容性问题1.DOCTYPE影响CSS处理2.Firefox:DIV设置margin-left,margin-right为auto时已经居中,IE不行3.Firefox:body设置text-align时,DIV需要设置margin:auto(主要是margin-left,margin-right)方可居中4.Firefox:设置padding后,DIV会增加height和width,但IE不会,故需要用!important多设一个height和width5.Firefox:支持!important,IE则忽略,可用!important为Firefox特别设置样式,值得注意的是,一定要将xxxx!important这句放置在另一句之上6.DIV的垂直居中问题:vertical-align:middle;将行距增加到和整个DIV一样高line-height:200px;然后插入文字,就垂直居中了。缺点是要控制内容不要换行7.cursor:pointer可以同时在IEFirefox中显示游标手指状,hand仅IE可以8.Firefox:链接加边框和背景色,需设置display:block,同时设置float:left保证不换行。参照menubar,给a和menubar设置高度是为了避免底边显示错位,若不设height,可以在menubar中插入一个空格。9.在mozillafirefox和IE中的BOX模型解释不一致导致相差2px解决方法:DIV{margin:30px!important;margin:28px;}注意这两个margin的顺序一定不能写反,据阿捷的说法!important这个属性IE不能识别,但别的浏览器可以识别。所以在IE下其实解释成这样:DIV{maring:30px;margin:28px}重复定义的话按照最后一个来执行,所以不可以只写margin:XXpx!important;10.IE5和IE6的BOX解释不一致IE5下DIV{width:300px;margin:010px010px;}DIV的宽度会被解释为300px-10px(右填充)-10px(左填充)最终DIV的宽度为280px,而在IE6和其他浏览器上宽度则是以300px+10px(右填充)+10px(左填充)=320px来计算的。这时我们可以做如下修改DIV{width:300px!important;width/**/:340px;margin:010px010px}关于这个/**/是什么我也不太明白,只知道IE5和firefox都支持但IE6不支持,如果有人理解的话,请告诉我一声,谢了!:)11.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义ul{margin:0;padding:0;}就能解决大部分问题。◆注意事项:1、float的DIV一定要闭合。例如:(其中floatA、floatB的属性已经设置为float:left;)<#DIVid=\”floatA\”><#DIVid=\”floatB\”><#DIVid=\”NOTfloatC\”>这里的NOTfloatC并不希望继续平移,而是希望往下排。这段代码在IE中毫无问题,问题出在Firefox。原因是NOTfloatC并非float标签,必须将float标签闭合。在<#DIVclass=\”floatB\”><#DIVclass=\”NOTfloatC\”>之间加上<#DIVclass=\”clear\”>这个DIV一定要注意声明位置,一定要放在最恰当的地方,而且必须与两个具有float属性的DIV同级,之间不能存在嵌套关系,否则会产生异常。并且将clear这种样式定义为为如下即可:.clear{clear:both;}此外,为了让高度能自动适应,要在wrapper里面加上overflow:hidden;当包含float的box的时候,高度自动适应在IE下无效,这时候应该触发IE的layout私有属性(万恶的IE啊!)用zoom:1;可以做到,这样就达到了兼容。例如某一个wrapper如下定义:.colwrapper{overflow:hidden;zoom:1;