2014-11-03 162 views
0

大家!保持固定菜单栏不重叠

我多多少少设计一种原型网站。就像其他网站一样,我试图设置一个固定位置的菜单栏,但不会覆盖我放在屏幕上的所有其他内容。所以,从本质上讲,我希望在另一个盒子(网页主体)的顶部有一个100%宽的盒子(菜单栏),它放在页脚上。

我的代码如下所示:

<header> 
    <nav> 
    <ul> 
     <a href="#"><li>Name</li></a> 
     ...More list elements... 
    </ul> 
    </nav> 
</header> 

header{ 
    background-color:white; 
    width:100%; 
    padding:15px; 
    border-bottom:1px solid black; 
    position:fixed; 
    margin-top:-25px; 

nav ul li{ 
    list-style-type:none; 
    display:inline-block; 
    padding:10px; 
    margin-right:100px; 
    font-family:Script MT, /*To make sure the font is displayable for you*/ Arial; 
    font-size:20px; 

每当我在文档的其余部分东西(我已经把标签和标签的菜单栏),菜单栏重叠,所以它的不可见。

所以问题是: 在世界上我如何让我的菜单栏保持固定但不重叠其他所有内容?

回答

1

你需要以抵消你的头,这意味着你需要给它一个固定高度的高度内容:

HTML:

<header> 
    ... 
</header> 

<div class="content"> 
</div> 

CSS:

header{ 
    ... 
    height:50px; 
} 

.content{ 
    margin-top:50px  
} 
+0

工作正常!谢谢。 – uto998 2014-11-03 21:52:39

0

尝试使用z-index并将其设置为ex。 9999

header { 
    background-color:white; 
    width:100%; 
    padding:15px; 
    border-bottom:1px solid black; 
    position:fixed; 
    margin-top:-25px; 
    z-index: 9999; 
} 

这将使头中的所有其他元素的前面,除非它们具有较高的Z-索引号。

+0

我试过了,但内容与标题重叠。再次,不是我想要的。 – uto998 2014-11-03 21:31:08

+0

你可以试着用你所有的代码做一个小提琴吗?使它更容易处理:) – TheYaXxE 2014-11-03 21:34:49

+0

它在这里:http://jsfiddle.net/doe0tdvz/1/ – uto998 2014-11-03 21:46:19

0

如果我明白你在问什么,就把padding-top放在body标签上,该标签等于菜单栏的高度。这样,当你在页面顶部时,浮动菜单不会与任何东西重叠。

+0

对我来说,当我这样做时,它会推动整个菜单栏。 – uto998 2014-11-03 21:42:31