2013-01-12 49 views
1

HTML:如何排列div inline?

<div id="header"> 
    <div id="logo" class="block"><h1>Logo place</h1></div> 
    <div id="navigation" class="block"> 
     <ul> 
      <li><a href="index.html" class="current"><span class="meta">Homepage</span><br />Home</a></li> 
      <li><a href="about.html"><span class="meta">Who are we?</span><br />About</a></li> 
      <li><a href="contact.html"><span class="meta">Get in touch</span><br />Contact Us</a></li> 
     </ul> 
    </div> 
</div> 

CSS:

#header .block{ 
    padding: 5px; 
    display: inline-block; 
    vertical-align: top; 
} 

#header #logo{ 
    float: left; 
    vertical-align: middle; 
} 

#header #navigation{ 
    float: right; 
    vertical-align: top; 
} 

#navigation li{ 
    display: inline-block; 
} 
#navigation li a { 
    font-family:arial,sans-serif !important; 
    display:block; 
    padding:44px 0 0; 
    text-decoration:none; 
    color:#000000; 
    font-size:14px; 
    font-weight:bold; 
} 

http://jsfiddle.net/nonamez/gGrrm/

enter image description here

所以,我需要拿起div的一點,那這將是幾乎在同一水平上與標誌。如果需要,可以有一個height。可能有人能爲我的問題提供一些線索嗎?

+0

我相信inline-block的不完全支持div的爲好。至少在IE的一些變體中。如果您需要內聯塊使用跨度。 – Leeish

回答

3

的原因,您的菜單不上邊是因爲

#navigation li a 

具有填充:

padding:44px 0 0; 

所以通過改變該行正常安排吧:

padding:0; 
+0

這就是爲什麼它低的確切原因。 – Supplement

+0

非常感謝。需要更多的睡眠。 – Kin

+1

好的。你知道如何在瀏覽器中使用「檢查元素」嗎?這是一個非常好的工具。另外,不要忘記接受答案:) –