关于div容器在ie6下默认高度不为0(存在默认高度)
2014-02-20 14:44
232 查看
最近做项目的时候遇到一个问题,相信很多人都遇到过,就是在测试兼容性的时候,在ie6下小于12px 的背景的高度不等于原高,或许这样说你可能不是很明白,那就举个例子吧!
如图所示:
![](http://images.cnitblog.com/blog/600165/201402/201415004455167.png)
锯齿状的背景图本来是和上面和下面的背景是挨在一起的,看代码:
我给他加一个边框看看:
代码:
在ie6下的效果:
![](http://images.cnitblog.com/blog/600165/201402/201421042537309.png)
在其他浏览(ie7+,谷歌,火狐等等):
![](http://images.cnitblog.com/blog/600165/201402/201422040356339.png)
如图可知:在ie6下的div容器会默认有一个高度,即使你将这个容器的高度设为0都没有用,会保持他的高度不变,只有当容器的高度大于他的默认高度时才可以;
但是事实情况是我们不需要他的默认高度,那怎么办呢?
一查资料:得知 ie6 下的默认字体大小为12px-14px; 使得在ie6下有个最小的默认高度12px(默认高度跟你的默认字体大小有关);
如何解决呢? 有2种方法:
第一种是设字体大小,ie6下不是有默认字体吗?我们就将默认字体去掉,将font-size设为0px,行高可设可不设,没什么关系,但此时还是会有一个2px的默认高度;如果我们一定要定义一个0px的div容器呢?那我们就用到第二种方法:
![](http://images.cnitblog.com/blog/600165/201402/201439310707618.png)
![](http://images.cnitblog.com/blog/600165/201402/201439310707618.png)
这是解决后的ie6下的效果,跟别的浏览器就一样了
有默认高度不要紧,我们将高度设为0px或者是5px;然后用overflow:hidden将多余的截掉,就可以实现0高度或者小尺寸的高度了;(这里要注意:使用overflow:hidden时,背景图片的background-position:top XX,因为截取是向下截得);
到此为止:妈妈再也不用担心我的DIV有默认高度了!嘻嘻!希望对你有用!
如图所示:
![](http://images.cnitblog.com/blog/600165/201402/201415004455167.png)
锯齿状的背景图本来是和上面和下面的背景是挨在一起的,看代码:
.bg9{ width:100%; height:8px; background:url(../images/bg9.jpg) repeat-x center center;}
我给他加一个边框看看:
代码:
.bg9{ width:100%; height:8px; background:url(../images/bg9.jpg) repeat-x center center; border:1px solid #000;}
在ie6下的效果:
![](http://images.cnitblog.com/blog/600165/201402/201421042537309.png)
在其他浏览(ie7+,谷歌,火狐等等):
![](http://images.cnitblog.com/blog/600165/201402/201422040356339.png)
如图可知:在ie6下的div容器会默认有一个高度,即使你将这个容器的高度设为0都没有用,会保持他的高度不变,只有当容器的高度大于他的默认高度时才可以;
但是事实情况是我们不需要他的默认高度,那怎么办呢?
一查资料:得知 ie6 下的默认字体大小为12px-14px; 使得在ie6下有个最小的默认高度12px(默认高度跟你的默认字体大小有关);
如何解决呢? 有2种方法:
.bg9{ width:100%; height:8px; background:url(../images/bg9.jpg) repeat-x center center; border:1px solid #000; _font-size:0px; line-height:0;}
第一种是设字体大小,ie6下不是有默认字体吗?我们就将默认字体去掉,将font-size设为0px,行高可设可不设,没什么关系,但此时还是会有一个2px的默认高度;如果我们一定要定义一个0px的div容器呢?那我们就用到第二种方法:
![](http://images.cnitblog.com/blog/600165/201402/201439310707618.png)
.bg9{ width:100%; height:8px; background:url(../images/bg9.jpg) repeat-x top center; border:1px solid #000; overflow:hidden;}
![](http://images.cnitblog.com/blog/600165/201402/201439310707618.png)
这是解决后的ie6下的效果,跟别的浏览器就一样了
有默认高度不要紧,我们将高度设为0px或者是5px;然后用overflow:hidden将多余的截掉,就可以实现0高度或者小尺寸的高度了;(这里要注意:使用overflow:hidden时,背景图片的background-position:top XX,因为截取是向下截得);
到此为止:妈妈再也不用担心我的DIV有默认高度了!嘻嘻!希望对你有用!
相关文章推荐
- IE6下div存在默认最小高度 = 设定的字体大小高度
- 经典的IE6的高度问题-div默认存在3个像素高
- 经典的IE6的高度问题-div默认存在3个像素高
- ie6中关于div 高度的bug-----空div标签默认高度
- 关于 IE6 IE7中 空div 高度却不为0的问题
- ie6中的div有默认高度,当定义一div小于其默认高度时,ie6仍会呈现div的默认高度,解决方法
- IE6中DIV的默认高度问题
- IE6下DIV的默认高度问题
- 在IE6,IE7 中DIV容器固定高度的使用技巧
- 在IE6,IE7 中DIV容器固定高度的使用技巧
- [译] 关于CSS中的float和position (父容器div内的子元素div为float时,父元素无法撑开(或高度自适应)的解决方式)
- 关于CSS中的float和position (父容器div内的子元素div为float时,父元素无法撑开(或高度自适应)的解决方式)
- 关于ie7和ie6 中div自动高度的问题
- [译] 关于CSS中的float和position (父容器div内的子元素div为float时,父元素无法撑开(或高度自适应)的解决方式)
- 使IE6中DIV(或其他容器)设置高度(h…
- IE6下DIV的默认高度问题
- IE6中DIV的默认高度问题
- IE6下DIV的默认高度问题
- 关于文字溢出DIV容器的解决方法
- 在ie6中DIV最小高度的解决方法