2011-03-23 166 views
0

http://testing.ipalaces.org/在IE9中看起来不同,其中子导航中的第二个LI使上边框变为顶点。它现在的宽度似乎适用于每个主要浏览器,但IE9。如果我将它设置为恰好3px,那么它在IE9中运行良好。IE9宽度问题

这是一个已知的错误吗?我可以解决这个问题,而无需进行条件IE9 CSS调用?

+0

不知道你的意思。我没有看到菜单和浮在Chrome,FF4和IE9有什么区别“Welcome”下面有一段空白,你可以发表一个图片吗? – 2011-04-02 13:46:28

回答

1

问题是,如果没有明确的宽度,#sub-navigation li.selected会因为字体渲染而在IE 9中渲染几个像素,从而中断下一个浮动元素。强制宽度将修复它。

另外,大胆的Verdana渲染比较宽,所以你应该考虑从字体堆栈中删除它。

#sub-navigation li { font:700 16px/1 geneva, sans-serif; } 
#sub-navigation li.selected { width:105px; } 
+0

是的,我知道我可以这么做,但是我说我不想使用条件IE语句 – ParoX 2011-03-27 02:42:32

+0

查看最新的答案 – Marcel 2011-03-27 03:22:25

+0

这个适用于主页面,但请注意,每个页面的宽度对于li.selected都是不同的。我正在寻找一个常规修复程序,目前的修复程序现在是pro在我的头文件php文件中插入一切,并检查IE9的方式,因为我不想看到任何可见的IE9变通办法。 – ParoX 2011-03-29 21:21:12

0

如何文本溢出?

+ CSS:

#sub-navigation li span { 
white-space: nowrap; 
width: 100%; 
overflow: hidden; 
text-overflow: ellipsis; 
} 

试试这个,反正我没有IE(苹果rulz),但在我的工作场所,我们通常优化IE的网站了。如果这不起作用,我明天会检查它。

+1

这对IE9或其他任何浏览器都没有影响。这意味着问题仍然存在于IE9中 – ParoX 2011-03-30 21:03:12

+0

因此,您发布了一个答案,但实际上并未确认它是否有效? – SomeKittens 2013-10-21 23:55:32

0

我可以问一下,为什么在导航中最后一个<li>里面的所有下拉菜单都是嵌套列表?

如果是我,我会将每个下拉列表放在自己的列表中,作为父链接的子项目。 这样,您可以继承父项的下拉项的水平边界,并且它应该更直接地匹配宽度。

此外,代码将更符合逻辑地阅读,并且在未来更容易扩展。

+0

我猜是因为下拉是“品牌”,我觉得他们应该在父母项下,让他们下降。虽然不需要定义设置宽度以匹配上面的那个是理想的,但我会考虑这一点。 – ParoX 2011-03-30 21:04:10

0

您应该为子菜单中的所有li设置固定宽度,具体取决于所需的数量。现在第一个列表元素应该设置为宽度:107px。

测试它,只需添加style="width:107px“到<li class="selected">

祝你好运:)

+0

如果菜单项的数量没有变化,为什么不保持宽度固定? – cmplieger 2011-03-30 22:08:48

+0

他们改变,浏览网站。 – ParoX 2011-03-31 03:01:25