我设置了一个<nav>,其中包含一个无序的链接列表,并在每个<li>上设置10px边框。

由于我使用的字体在每个字符上方都有大量空间,因此我在链接上设置了position: relative,并将其向上推了6个像素,以使它们紧靠父<li>的边框。

除了IE7(可能还有以下版本)之外,该方法在其他地方均能正常工作,其中整个<li>及其子元素<a>似乎都向上推了6个像素,这使我的导航失去了位置。

这是显示我的代码的jsfiddle:http://jsfiddle.net/SD3Xj/

如果要查看实时站点以查看其在IE7中的外观,则位于http://jasonbradberry.com

有什么建议可以解决这个问题吗?

最佳答案

这些CSS规则将解决您遇到的问题:

nav { margin-top: -80px; padding-bottom: 33px; }

nav ul { float: right; position: relative; }

nav li { float:left; display:inline; border-top: 10px solid #7a7a7a; margin-right: 16px; }

nav li.active { border-top: 20px solid #29cf86;}

nav a {}


只需将CSS规则替换为上述规则即可。

07-25 23:08
查看更多