2013-07-15 35 views
2

对网站im building有疑问。 网站的标题部分包含3个div,它们应该在同一行。 1在左侧,1在屏幕中间,1在右侧。 标题宽度为100%。连续3个div,中间1个,但div内留有浮动

#header { 
background-color:#352618; 
height: 100px; 
width:100%; 
} 

和三个div的内部:

#logo 
{ 
float:left; 
width:200px; 
height:80px; 
margin-top:6px; 
margin-left:20px; 
} 

#Menu { 
font-size:17px; 
margin: 0 auto; 
padding-top:20px; 
width:100%; /** before it was 850 px **/ 
} 

#LanguageSelect 
{ 
float:right; 
width:120px; 
height:80px; 
font-size:14px; 
padding-top:60px; 
padding-right:10px; 
} 

好了,现在的问题是: 菜单部分是标头的菜单,这是一个<li><ul>下拉菜单。 代码:

<div id="Menu" class="text_blue"> 
    <ul id="menu_noya"> 
     <li class="head_item"> 
      <a href="mine.html?search_engines">Women</a> 
       <ul> 
        <li><a href="http://google.com/">Google</a>       </li> 
        <li><a href="http://yahoo.com/">Yahoo</a>  </li> 
        <li><a href="http://live.com/">Live  Search</a></li> 
       </ul> 
     </li> 
    </ul> 
    </div> 

,其结果是,该标志被放置确定,语言选择是好,但是菜单棒到左边,而不是在中间的屏幕的,为什么呢?因为为了使<li><ul>在同一行中,我需要使用float:left,所以菜单可以在同一行。

我能做些什么以使它在中间,而不使用float:left

  • 另一个问题:我使用这种字体:Hiragino Mincho Pro,当字体是< 18px;它并不好,就像它没有反对派一样。

下面是一般情况下的示例。 http://jsfiddle.net/GEKkf/

感谢很多的帮助和阅读! Elroy。

+0

试图把在[的jsfiddle]代码(http://jsfiddle.net/),它对其他人来说更容易一看。 –

+0

使用'clear:both',如果要取消剩余的浮点数 –

回答

2

添加以下类:

FIDDLE

#header { 
    text-align: center; 
} 

#Menu { 
    display: inline-block; 
    font-size: 17px; 
    padding-top: 20px; 
} 

此外,另一种方式这样做,看到我的回答here

+0

非常感谢!作品! appricate它,感谢其他人的帮助,显示:inline-block;修复 。 –

0

把所有三个div的在float: left;,并把它们作为33%的宽度(或很少量低于33%,如果你愿意的话)

然后加入具有clear:both;一个HTML元素之后,以确保你推其余的页面向下。如果您愿意,也可以使用css :after

+0

不起作用,则每个元素都会转到页面的其他部分。 –

+0

你是什么意思它转到页面的其他部分?你可以试试float:right;如果你的意思是他们错误的顺序。 – James

+0

http://jsfiddle.net/GEKkf/ 正如您所看到的,菜单粘贴到徽标,它应该在屏幕中间,这就是问题所在。谢谢,Elroy。 –

0

您需要更改li.head_item:在你的CSS文件UL进入悬停于以下内容:

li.head_item:hover ul { 
position: absolute; 
display: block; 
width: 142px; 
background-color: #e9e9e9; 
}