0

如果您查看此代码:http: //jsfiddle.net/b3KaM/2/

在 IE7 中,即使设置了<a>标签,标签也不会拉伸到它们的父宽度。您可以看到列表项上的背景颜色设置为红色而链接上的背景颜色设置为黄色的差异。<li>display: block;

它显然在 FF/Chrome 和朋友中运行良好。

编辑:这里的复杂性是我无法设置固定宽度 - 链接文本应保持在一行,整个列表应根据需要扩展。

我知道这是之前被问到的,我发现了一些关于 SO 的问题,但我找不到这个问题的有效解决方案 - 有什么想法吗?

如果不是 - 是否可以肯定地说在 IE7 上无法获得与在其他浏览器上相同的结果,即这是一个没有解决方法的 Internet Explorer 错误?

4

2 回答 2

2

此问题是由 IE7 和更低版本中称为hasLayout.

要解决此问题,您必须简单地阻止您的a元素“获得布局”。

不幸的是,有大量的东西会导致元素“获得布局”

您的a元素当前拥有overflow: hiddenmin-height设置。如果您删除这些属性,它将在 IE7 中运行。

于 2012-06-27T11:49:50.803 回答
0

对于块,您还必须为元素提供宽度。例如:- http://jsfiddle.net/b3KaM/8/

于 2012-06-27T11:33:07.947 回答