我知道这个问题之前已被问过一百万次,但我尝试过的任何方法都无法解决问题。我正在研究一个漂亮的 <select>
类型的东西。我基于常见的 CSS 下拉导航菜单(使用嵌套的 <ul>
s 和 <li>
s,只是做了一些调整。其中一个调整是我需要它显示内联(不 float 它因为它超过与它在同一行中的任何其他元素,我不想在它周围 float 所有其他元素。除了 ie 7 之外,我已经让它在浏览器中运行良好(可能还有更低的版本,但我不需要任何低于 ie7 的版本。这是代码:http://jsfiddle.net/ralokz/hjDVS/2/
如果您在任何非 ie7 浏览器中查看它,它看起来就像我想要的那样:
但是如果你在ie7中看,它看起来是这样的:
我看到一个经常出现内联 block 修复的站点是:http://blog.mozilla.com/webdev/2009/02/20/cross-browser-inline-block/ .这适用于 ie8,但不幸的是 ie7 看起来仍然不正确。
是否有任何其他方法来修复 ie7 的内联 block ?或者,是否有 CSS 替代方案来确保第二级 <li>
s 始终与第一层垂直对齐 <li>
?谢谢!
最佳答案
添加:
position:relative;
到 div.dropdown ul li
,去除 div.dropdown ul li ul
上的边距并将其设置为 top:25px
, left:-1px;
, width:100%
;最后,将 div.dropdown ul li ul li
设置为 margin:0;
删除左右填充,并设置 width:100%
。 ..
我可能漏掉了什么,但这里有一个有效的例子:http://jsfiddle.net/hjDVS/7/
我认为你真正的问题是绝对定位 ul
关于html - ie 7 不适用于 CSS 内联 block 或修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6446310/