在IE7中,有相对定位的孩子的父母与孩子一起移动

时间:2012-11-08 15:18:20

标签: css internet-explorer-7 position css-position

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

因为我使用的字体在每个字符上方都有大量空间,所以我在链接上设置了position: relative,并将它们向上推了6个像素,因此它们与父母的边界相距很近<li>

除了IE7(以及可能在下面)之外,其他任何地方都可以正常工作,其中整个<li>及其子<a>似乎向上推6个像素,这会导致导航偏离位置。

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

如果您想查看实际网站,了解它在IE7中的外观,请点击http://jasonbradberry.com

有任何解决此问题的建议吗?

1 个答案:

答案 0 :(得分:0)

这些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规则替换为上述规则即可。