2011-08-19 52 views
3

我有一個菜單:爲什麼這個菜單包裝?

http://www.spotlesswebdesign.com/dqhendricks/index.html

的問題是,當你調整窗口的大小足夠小,菜單將着手結束到第二行。我想阻止這種情況的發生,並且在過去我使用非常類似的CSS而不會出現這個問題。我怎樣才能阻止它包裝?

下面是一些代碼:

HTML

<div id="nav"> 
     <div class="left"></div> 
     <div class="right"></div> 
     <div class="center"> 
      <ul> 
       <li> 
        <a href="#">Home</a> 
       </li> 
       <li> 
        <a href="#">Experiments</a> 
       </li> 
       <li> 
        <a href="#">Contact</a> 
       </li> 
      </ul> 
     </div> 
    </div> 

CSS

#nav { 
    margin: 0 25px; 
} 

#nav .left { 
    float: left; 
    width: 9px; 
    height: 38px; 
    background-image: url('../images/nav/left.png'); 
} 

#nav .right { 
    float: right; 
    width: 9px; 
    height: 38px; 
    background-image: url('../images/nav/right.png'); 
} 

#nav .center { 
    height: 38px; 
    margin: 0 9px; 
    background: url('../images/nav/center.png') repeat-x; 
} 

#nav ul { 
    width: 1000px; 
    height: 38px; 
    margin: auto; 
    padding-left: 2px; 
    list-style-type: none; 
    background: url('../images/nav/divider.png') top left no-repeat; 
} 

#nav li { 
    display: inline; 
} 

#nav a { 
    display: block; 
    float: left; 
    padding: 0 30px 0 28px; 
    height: 38px; 
    line-height: 36px; 
    text-decoration: none; 
    color: #777777; 
    background: url('../images/nav/divider.png') top right no-repeat; 
} 

回答

2

使用min-width允許它與頁面一起增長而不是固定寬度。應該在IE8和所有其他瀏覽器中工作。 IE6可以去刻錄。

+1

針對IE6評論+1。 – Martin

1

地址:

overflow: visible 

到#nav

+0

沒有工作。仍然包裹。 – dqhendricks

+0

什麼瀏覽器?在FF6工作。 – Martin

+0

我試過ie8。 – dqhendricks

1

套裝包裝DIV的大小:

#nav { 
    margin: 0 25px; 
    width: 1000px; 
} 
+0

或者,也可以使用'min-width'來允許它與頁面一起增長,而不是固定寬度。 – Guttsy

+0

我不行。無論大小如何,我都希望包裝div可以擴展到頁面的邊緣。 – dqhendricks

+0

完美。最小寬度取得了訣竅。謝謝。 – dqhendricks

3

This is a working example我只是測試了。

white-space: nowrap;添加到#nav .center並添加display: inline-block;#nav li

這兩個將阻止導航的內容包裝和創建一個新行。

+1

謝謝你的回答。我會用這個,但意識到最小寬度服務器會更好,因爲我想保留最小寬度以及修復包裝。 – dqhendricks

相關問題