可能重复:
IE6 + IE7 CSS problem with overflow: hidden; - position: relative; combo
我正在尝试将HTML无序列表(UL标记)中的项目始终保持为1行的高度,而不管每个项目中有多少行文本,使用固定高度和溢出:隐藏在DIV上在每个LI里面。
这是一个演示:
http://www.isw.com.au/domino/isw/iswdevelopmentwebsite.nsf/test-overflow-hidden
红色框包含相关列表。
这在Opera,Firefox和Chrome中完美运行,但在IE中不起作用。我希望它至少在IE 7,8和9中工作 IE正在使额外的文本行不可见,但仍然为它们留出空间,实际上忽略了每个LI内部DIV的固定高度。
链接到下一页的另一个StackOverflow问题可以通过设置position:relative on containers来修复溢出问题:
http://snook.ca/archives/html_and_css/position_relative_overflow_ie
我的演示页面的CSS在每个元素上都有位置:相对于BODY中的顶级DIV,但这没有效果。
如何解决IE中的问题?
更新:
我在LI标签上添加了一个固定高度(1.8em),这有很大帮助,但还有另一个问题。
对于每个LI,IE在项目符号字符下方显示一行文本。这使得整个列表占用5行空间,应该是4。
答案 0 :(得分:2)
我已经解决了。我需要以下所有内容才能使其始终跨浏览器工作:
- 在每个LI内部的DIV上显示“内联”(停止IE添加换行符);
- 固定高度和LI标签上的“溢出:隐藏”;最后是
- UL上的“list-style-position:inside”,因为“overflow:hidden”隐藏了子弹。