2010-01-11 72 views
2

我有一个无序的列表,我水平显示为页面的顶级菜单栏。我已经得到它显示相对较好,虽然我一直在玩IE6和IE7的间距导致它不能正确显示。令人震惊的。无论哪种情况,使用表格来显示菜单还是使用一些CSS黑客更好?我无法找到解决办法?什么是显示菜单的最佳方式?我应该添加一些使用自己的无序列表的下拉菜单的选项。菜单作为无序列表水平或表?

+0

我在说的菜单可以在这个页面上看到 - http://www.sustainablebolivia.org/about.html – 2010-01-11 15:42:38

回答

3

退房List-a-matic,它有许多不同的菜单模板,您可以用作基地。

一个简单的横向列表可以使用CSS和无序列表中显示

HTML

<div id="navcontainer"> 
<ul id="navlist"> 
    <li id="active"><a href="#" id="current">Item one</a></li> 
    <li><a href="#">Item two</a></li> 
    <li><a href="#">Item three</a></li> 
    <li><a href="#">Item four</a></li> 
    <li><a href="#">Item five</a></li> 
</ul> 
</div> 

CSS

#navlist li 
{ 
display: inline; 
list-style-type: none; 
padding-right: 20px; 
} 
0

很难从你身边给没有SSCCE一个明确的答案(纯文本<html>包括文档类型和嵌入式样式),它精确地再现你有问题。但我至少可以告诉你常见的问题是,你没有得到the doctypeIE's boxmodel bug在这里扮演一个角色。

如果这不是根本原因,那么下一个可能的原因是未能理解如何使用floats和/或内嵌/块元素。为了得到好的和坚实的代码示例,Google "suckerfish menu"

+0

我第二个建议学习suckerfish imlementation的来龙去脉。即使你不需要使用完整的实现,它也会为你提供你需要知道的每一个单词(几乎哈哈),以便使用浮动的“li”作为菜单。 – prodigitalson 2010-01-11 15:52:55

0

编辑

你不能依靠display: inline-block来处理这一点,因为跨浏览器的支持是有问题的。使用花车代替dispaly: inline; position: relative。我会继续使用UL的。不要使用黑客攻击IE *尽管 - 使用IE条件为不同版本的IE添加不同的样式表。