当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS设置的背景图片在IE7中点击消失

CSS样式表
英文教程:五种CSS选择器类型
网页缓冲效果特效代码
CSS教程:CSS让网页文字自动隐藏
利用CSS在导航条上标示当前所在频道
CSS教程:网页无序列表标记的设计
.clear方法解决网页自适应高度的问题
CSS教程(7):网页段落行间距控制的实例
CSS教程(6):实例学习CSS如何控制网页文本
CSS教程(3):通过实例学习CSS背景
CSS教程(2):通过实例学习CSS背景
制作网页使用的CSS样式表错误排查方法
CSS Hack(Safari、Opera、Firefox3和IE7)
CSS教程:vlink,alink,link和a:link
CSS标示导航条当前所在频道
CSS制作网页时遇到BUG的解决方法
CSS教程:clip属性详细讲解
div层被flash层遮盖问题解决思路
CSS教程:CSS控制网页文字排版实例
Web标准建构的站点一览表
CSS实例:vertical-align属性让网页层居中

CSS样式表 中的 CSS设置的背景图片在IE7中点击消失


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-03   浏览: 146 ::
收藏到网摘: n/a

在div+css中的时候你可能会遇见这样的情况,ie6和ff浏览器下面某个div的背景是可以正常显示的,但是ie7下却无端失踪了背景!???什么回事?原因很简单.假如css的盒子模型下,以下html代码:

<div class="foot">
<div class="font"><a>font</a></div>
<div class="font2"><a>font2</a></div>
</div>

被设置的css代码为:

.foot{
margin-top:30px;
padding-top:100px;
border-bottom:10px solid #000;
background:url(img.jpg) no-repeat;//img.jpg高为100px
}
.font{
padding:5px
}
.font2{
padding:10px
}

根据盒子模型,这个foot的div所占据的竖直方向的空间为30+100+10+里层div占据空间>140px,理论上除去上间隙的30px和下边框的10px剩下的填充+子层占据的空间里面应该可以出现高为100px的背景img.jpg,实际上IE6跟FF上面也出现了,但是IE7会因为foot(class是foot的div)里面的div(这里指的是font和font2)并没有设置高度而认为foot的高度是0,因此背景图片是看不见的。
解决办法就很简单了:设置里层div高度(或者让里层div被撑大)或者直接设置foot的高度。当然直接设置foot的高度的话,里面子层div竖直占位发生变化,甚至超出foot范围时,就又要考虑div的自动扩展问题了。所以看着办吧。