首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为IE7空白错误在此li上触发hasLayout

如何为IE7空白错误在此li上触发hasLayout
EN

Stack Overflow用户
提问于 2011-12-03 20:36:54
回答 2查看 791关注 0票数 1

这里是它的HTML部分:

代码语言:javascript
复制
<nav id="main-navigation">
<ul>
    <li><a href="#" target="_self">lorem ipsium lorem ipsium lorem</a></li>
    <li><a href="#" target="_self">lorem ipsium lorem lorem</a></li>
    <li><a href="#" target="_self">lorem ipsium lorem ipsium lorem</a></li>
    <li><a href="#" target="_self">lorem ipsium lorem</a></li>                     
</ul>
</nav>

这里是CSS:

代码语言:javascript
复制
#main-navigation ul li a {    
    display:block;
    font-size: .8em;
    background: lime url("http://www.hpp.moh.gov.sg/HPP/MungoBlobs/636/378/bullets_doctors.gif") no-repeat right center;
    border-top: 1px dotted #ccc;
    color:#000; 
    padding: 2px 0;
}

#main-navigation ul li a.last {
    border-bottom: 1px dotted #ccc;
}


#main-navigation ul li a:hover,
#main-navigation ul li a:focus,
#main-navigation ul li a:active{
    background: red url("http://www.hpp.moh.gov.sg/HPP/MungoBlobs/636/378/bullets_doctors.gif") no-repeat right center;
    color:#fff
}

我不想更改html标记。

如果您在好的浏览器上看到这一点,然后在IE7上看到,您将看到IE7上的LI项在它们之间有很大的空白。

我尝试应用高度:1PX;在上,只在IE相关文件上应用。不走运。

如何才能正确地触发hasLayout,从而使空白bug消失?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-04 10:39:23

解决方案:

HTML部件:

代码语言:javascript
复制
 <!--[if lt IE 9]>
  <link rel="stylesheet" href="badbrowser.css"/>
<![endif]-->

CSS badbrowser.css的一部分:

代码语言:javascript
复制
/* Fix for vertical list LI white space - hasLayout trigger */
#main-navigation li a {
    display:inline-block;
}

#main-navigation li a {
    display:block;
}
票数 1
EN

Stack Overflow用户

发布于 2012-06-20 10:13:33

修复方法是在列表项上设置vertical-align: bottom;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8370816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档