如何解决div在IE7中消失
| 我在IE7中的div有问题,该问题正在消失,我不明白为什么。 我已经尝试添加zoom:1并溢出:有人建议将其隐藏,但无法正常工作。 div位于最后一个元素(向右浮动)的无序列表内(向左浮动)。 这是HTML<div id=\"top_menu\">
<ul id=\"dropmenu\">
<li>menu item1</li>
<li>menu item2</li>
...
</ul>
<div class=\"lang\">content</div>
</div><!-- end top menu -->
这是CSS
#top_menu {width:900px;font-size:13px; }
#top_menu ul#dropmenu {width:630px; height:28px; margin:0px; padding:0px; list-style:none; float:left; }
#top_menu ul#dropmenu li {float:left;display:block;}
.clearfix {display: inline-block;} /* for IE/Mac */
#top_menu .lang { width: 120px; color:#fff; margin:4px 10px 0 0; float: right; }
#top_menu .lang a{ color:#ff8601; }
#top_menu .lang a:hover{ color:#fff; }
谢谢你的帮助
编辑:我包括html并删除了url,以避免客户抱怨。
解决方法
您需要将
.clearfix
加到div#top_menu
并将height: 24px;
加到div.lang
那为我解决了所有菜单问题。
编辑
...并且可能不会使用绝对定位来解决布局问题。
,我现在使用的是IE9,但将此网站放入“兼容性视图”似乎也显示了此问题。
主菜单[ul]中的最后一个条目似乎一直延伸到元素的右侧。这出现在.lang div之前的标记中,因此我不希望它掩盖它...
您是否尝试过将.lang元素放入\“ position:absolute \”,然后查看它是否出现(显然假设其父元素相对放置)。之后,也许尝试使用20px左右的绝对值,然后查看它是否出现。
祝好运!
更新
挂在那儿。您的.lang div位于[ul]元素内,因此实际上定位不正确,因为允许作为[ul]子元素的唯一元素是[li]。
为什么不尝试将此div从列表中移出,而将其作为#top_menu元素的子元素放在外面呢?
那可能行得通!
,不知道这是否与您的情况有关,但是某些版本的IE会丢弃空的div。如果div不包含任何内容,请添加&nbsp;将迫使它存在。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。