1、IE6.0关于DIV默认高度的处理
在IE6中,使用CSS定义DIV的高度的时候,当DIV的最小高度小于一定的值以后,无论你怎么设置最小高度,Div的高度会固定在一个值不再发生变动。
<div style="float:right; width:946px; height:8px; background-color:#ededed;"></div>
这是因为在IE6中,系统默认的并非是Div有一个默认的高度,而是你没有解决一个隐藏的参数,font-size,这个是ie6中对于Div属性中的font-size大小和你系统css中定义的font-size有很大关系,因此必须单独定义这个Div的font-size,这样才能解决这个问题。更改后的代码如下。
<div style="float:right; width:946px; height:8px; background-color:#ededed; font-size:0px;"></div>
2、IE6下margin的双倍问题
IE6下的double margin bug,当一个用float浮动的元素,再设定margin-left或者margin-right的时候,IE6会将该值渲染为双倍
此Bug的解决方法:
给浮动元素添加“display:inline”的css样式即可。
3、IE6下 绝对定位元素的 1px 间距 bug
在宽或高为奇数的容器下出现了1px 间距,而在偶数容器下正常。
不完美的解决方法:改变结构并使用浮动
HTML
<div class="fix">
<div class="outer height199">
<div class="inner2">img</div>
<p>This container has a height of 199px</p>
</div>
<div class="inner">img</div>
</div>
<div class="fix">
<div class="outer height200">
<div class="inner2">img</div>
<p>This container has a height of 200px</p>
</div>
<div class="inner">img</div>
</div>CSS
.fix {
width:200px;
margin:10px;
position:relative;
float:left;
display:inline;/* ie double margin fix*/
}
.fix .outer{margin:0}
.fix .inner{
clear:both;
margin-top:-30px;
position:relative;
float:left;
}
.fix .inner2{float:right;position:static}