部分情况下不排除代码不规范造成的IE浏览器不兼容问题,你可以使用下谷歌浏览器、火狐浏览器进行下对比,另外也可能有布局不合理的情况,可以参考下下面的情况:
背景颜色不显示的原因主要有以下几个方面:
1. css没有被调用
2. div的高度没有固定,是auto、没有设值或者高度不够
3. div被嵌套
4. div代码不规范
解决办法:
- DIV高度为自动,背景颜色无法显示,在代码中将原代码height:auto; 改为height:100%; overflow:hidden;!important;同时还可以兼容 IE6、7、8和谷歌火狐。
- 假设对一个对象设置了background背景颜色样式,该对象内部盒子有使用float浮动属性样式,这个时候该对象浮动产生,导致该对象不能撑开,所以css背景颜色就不能无法显示,解决方法有三种,一个是设置clear清除浮动、设置css高度、设置css overflow样式。
- 高度限制造成了背景颜色不能显示完整,假如你有个对象没有计算好高度(或无意设置了一个很小高度属性样式),因为不确定内容有多少,当内容超过你设置高度限制,这个时候超出部分背景就可能无法显示。设置够高的高度,或取消删除高度样式即可。
案例:
<div style="width:960px;background-color:#000000">
<div style="width:300px; height:200px; float:left">左侧</div>
<div style="width:300px; height:200px; float:left">中部</div>
<div style="width:360px; height:200px; float:left">右侧</div>
</div>
因为外层的div没有设置高度,所以设置如上代码之后,看到的是三个透明的方框,
正确代码如下:
<div style="width:960px; height:200px;background-color:#000000">
<div style="width:300px; height:200px; float:left">左侧</div>
<div style="width:300px; height:200px; float:left">中部</div>
<div style="width:360px; height:200px; float:left">右侧</div>
</div>
外部设高了,