当前位置: 代码迷 >> Web前端 >> IE元素内容为空时占据空间的解决方法
  详细解决方案

IE元素内容为空时占据空间的解决方法

热度:43   发布时间:2012-10-24 14:15:58.0
IE元素内容为空时占据空间的解决办法

当在div标签内无所有内容时:

  <div></div>

  如果给div元素<b>设置了宽度<b>时,比如width:100%,此时div在IE中(IE6,IE7)将占据物理空间,而在FF中不占据物理空间(正确理解)。为了表述直观,将样式直接写在元素标签内:

  <div?style="width:100%"></div>

  此时在IE中到底是什么在影响着最终的显示,又是怎么解析的呢?

  可能的影响因素:字体大小(font-size),字体行高(line-height),高度(height),溢出(overflow)

  我们对上面的代码逐一添加过滤属性(具体的过程有兴趣的朋友,能私下里实验一下,“自己动手,丰衣足食”!)

  在测试的过程中,你会发现IE6和IE7的解析也不尽相同,比如在给div设置了line-height:0;?height:0;?的样式后,IE7中显示正常了,不再占据物理空间了,而IE6却依然我行我素,亦或是悲!

  最终的测试结果,最简单的方法是,给div设置高度(height)和溢出(overflow)属性:

  <div?style="width:100%;height:0;overflow:hidden;?"></div>

?

代码:

<ul>
				<li><a href="">汽车音响改造</a></li>
				<li class="seq"></li>
				<li><a href="">家庭影院</a></li>
				<li class="seq"></li>
				<li><a href="">录音室</a></li>
				<li class="seq"></li>
			</ul>

?

原始表现:

?

?

?

加上font-size:0后

?

?

?

  相关解决方案