当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > css 不兼容性问题小结

CSS样式表
CSS网页设计 IE8和IE7共存
CSS2 打印属性让打印HTML文档不出问题
制作网页中设计段落缩进的方法
CSS border 属性使用说明
CSS border-style 属性使用方法
CSS border-color 属性使用方法
CSS border-width 属性使用教程
CSS padding属性定义边内补白
CSS margin 属性定义边外补白
网页布局教程 掌握CSS网页布局属性
css 背景样式属性说明
span margin 设置生效
html 滚动条在IE6和IE7中兼容性问题
IE6 两个div有间隙的问题(IE 3px bug)
CSS 数字和字母将容器撑大问题解决
换个角度看页面重构中的语义化
DIY属于个人开发使用的CSS Reset
CSS 空格引起网页布局间距问题
CSS 网页制作时遇到问题的快速参考技巧
css li 去掉点的样式写法

CSS样式表 中的 css 不兼容性问题小结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-27   浏览: 135 ::
收藏到网摘: n/a

1.清除浮动 clear:both;

代码如下:

<div class="colwrapper">
<div class="fl">
</div>
<div class="fl">
</div>
<div class="clear"></div>
</div>

这个div一定要注意声明位置,一定要放在最恰当的地方,而且必须与两个具有float属性的div同级,之间不能存在嵌套关系,否则会产生异常。并且将clear这种样式定义为为如下即可: .clear{ clear:both;} 此外,为了让高度能自动适应,要在wrapper里面加上overflow:hidden; 当包含float的box的时候,高度自动适应在IE下无效,这时候应该触发IE的layout私有属性,用zoom:1;可以做到,这样就达到了兼容。例如某一个wrapper如下定义:
.colwrapper{ overflow:hidden; zoom:1; margin:5px auto;}

2.margin加倍的问题。 设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的问题。
解决方案是在这个div里面加上display:inline;
例如:

代码如下:

<div id="imfloat"></div>
#imfloat
{
float:left;
margin:5px; /*IE下理解为10px*/
display:inline; /*IE下再理解为5px*/
}

3.cursor: pointer 可以同时在 IE,Firefox 中显示游标手指状, hand 仅 IE 可以.

4./* */ Css 注释IE5和firefox都支持,但IE6不支持.

5.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义 ul{margin:0;padding:0;} 就能解决大部分问题.

6.关于高度的问题: 如果是动态地添加内容,高度最好不要定义。浏览器可以自动伸缩,然而如果是静态的内容,高度最好定好。(似乎有时候不会自动往下撑开,不知道具体怎么回事)