HTML5学堂-码匠 HTML5学堂

您当前位于:项目兼容问题 ——> 浏览器常见兼容问题-IE6列表项之间的空隙问题如何解决

浏览器常见兼容问题-IE6列表项之间的空隙问题如何解决

2015/05/09 00:06:09 | 作者:HTML5学堂(码匠) | 分类:项目兼容问题 | 关键词:浏览器兼容,IE6,空行,bug

列表项间出现空隙 —— IE6的列表项

HTML5学堂:提到IE6,大家都很头疼,因为在IE6下,会发生各种奇葩的BUG,不知道大家是否遇到过这样的事情,FF中正常,在IE6中Li列表项之间增加空行。如果出现了这样的问题我们怎么解决呢?

1、HTML代码:

  1. <ul>
  2.     <li><a href="#">IE6中li列表项之间增加空行BUG</a></li>
  3.     <li><a href="#">IE6中li列表项之间增加空行BUG</a></li>
  4.     <li><a href="#">IE6中li列表项之间增加空行BUG</a></li>
  5. </ul>

2、CSS代码:

  1. * {padding:0;margin:0;}
  2. li {list-style: none;}
  3. li a {background:#CCC;border-bottom:1px #000 solid;text-decoration:none;display: block;}
  4. li a:hover {background:#BBB;}

IE6中列表的常见问题出现在当某个li中的内容是一个display:block的锚点(anchor)时。在这种情况下,列表元素之间的空格将不会被忽略而且通常会显示成额外的一行夹在每个li之间。一种避免这种竖直方向多余空白的解决方法是赋予这些锚点layout。这样还有一个好处就是可以让整个锚点的矩形区域都可以响应鼠标点击。

欢迎沟通交流~HTML5学堂

解决方案1(推荐):就是在li a 样式中加入width:100%或者一个宽度值;

  1.  * {padding:0;margin:0;}
  2. li {list-style: none;}
  3. li a {background:#CCC;border-bottom:1px #000 solid;text-decoration:none;display: block; width:100% }
  4. li a:hover {background:#BBB;}

解决方案2:就是在li a 样式中加入zoom:1;

  1. * {padding:0;margin:0;}
  2. li {list-style: none;}
  3. li a {background:#CCC;border-bottom:1px #000 solid;text-decoration:none;display: block;zoom:1}
  4. li a:hover {background:#BBB;}

解决方案3:就是在li 样式中加入display:inline ;

  1. * {padding:0;margin:0;}
  2. li {list-style:none;display:inline;}
  3. li a {background:#CCC;border-bottom:1px #000 solid;text-decoration:none;display: block;}
  4. li a:hover {background:#BBB;}

解决方法4(不推荐):就是将

  • 标签写成一行。

欢迎沟通交流~HTML5学堂

微信公众号,HTML5学堂,码匠,原创文章,WEB前端,技术分享

HTML5学堂

原创前端技术分享

HTML5学堂,HTML5,WEB,前端,视频课程,技术视频,学习视频,面试,JS

原创视频课程

用心打造精品课程

微信小程序,决胜前端,面试题,面试题集合,前端,HTML5,真题

小程序-决胜前端

前端面试题宝库

原创书籍,学习书籍,书籍推荐,HTML5布局之路,HTML5,WEB前端

HTML5布局之路

非传统模式讲解前端