2013-07-24 47 views
0

我在一个div里面有3个div。 - 标题 我想将菜单居中,其他div必须左右放置。CSS,中心菜单

Click here to see link.

它是建立这样的:

<header> 
<div id="header-left"></div><div id="menu"></div><div id="header-right"></div> 
</header> 

只是似乎无法得到它的工作。 谢谢!

+0

可能重复的[我如何排列3个div在同一行?](http://stackoverflow.com/questions/8690841/how-do-i-line-up-3-divs-on-the - 同行) –

回答

0

我已经做情侣修订:

#menu { 
    /*margin-left: 80px; removed */ 
} 

#menu { 
    border-radius: 3px 3px 3px 3px; 
    /*float: left; removed */ 
    margin: 27px auto 0; /* changed */ 
    width: 33%; 
    z-index: 122; 
} 

这会帮助你。

+0

需要保持float:left,否则它会下一行。 但现在差不多了,没关系,差不多在中间。他他 刚刚增加了33%的宽度,并改变了一些东西。 Thx –

+0

@Sabine Quardon欢迎:)如果有帮助,请接受答案;) – Morpheus

0

由于您希望在窗口缩小时调整元素大小,所以最好的解决方案就是使用flexbox。我连接了一篇文章给你:here

-1

你可以很容易地做到这一点与制作heading行为就像一个表:

<header> 
    <div>left</div> 
    <div>center</div> 
    <div>right</div> 
<header> 
header { 
    background: green; 
    display: table; 
    width: 100%; 
} 
header div { 
    display: table-cell; 
} 
header div:nth-child(1) { 
    background: yellow; 
    width: 100px; 
} 
header div:nth-child(2) { 
    background: lightblue; 
} 
header div:nth-child(3) { 
    background: blue; 
    width: 100px; 
} 

JSFiddle demo

两个外部divs有一个固定的宽度,中间的一个将其余的 空间。 希望这可以帮助你。

[编辑] 为了中心菜单将text-align: center添加到第二个div。

+1

我真的不介意downvotes,但我想解释为什么...请提供。 – LinkinTED