2012-09-29 102 views
0

我在css中創建了一個水平導航菜單,向左浮動。它工作正常。css水平導航菜單向右浮動,垂直子菜單與主菜單不對齊

當我改變浮球到右邊(並顛倒頂級李的順序)時,一切都很好,只是子菜單左移了一點(所以不要與頂層菜單垂直對齊項目)。

我試着改變li:hover > .nav中的左邊命令,但是沒有幫助。任何人都可以看到需要更改哪個頂層導航項和垂直對齊的子菜單中的項目?

謝謝。

我的CSS是:

#nav, .nav, #nav .nav li { 
    margin:0px; 
    padding:0px; 
} 

#nav li { 
    float:right; 
    display:inline; 
    cursor:pointer; 
    list-style:none; 
    padding:10px 30px 10px 30px; 
    border:1px #000 solid; 
    position:relative; 
    background: #990000; 
} 

#nav li ul.first { 
    left:-1px; 
    top:100%; 
} 

li, li a { 
    color:#fff; 
    text-decoration:none; 
} 

#nav .nav li { 
    width:100%; 
    text-indent:10px; 
    line-height:30px; 
    margin-right:10px; 
    border-top:1px #000 solid; 
    border-bottom:1px #000 solid; 
    border-left:none; 
    border-right:none; 
    background:#990000; 
} 

#nav li a { 
    display:block; 
    width:inherit; 
    height:inherit; 
} 

ul.nav { 
    display:none; 
} 

#nav li:hover > a, #nav li:hover { 
    color:#990000; 
    background:#fff; 
} 

li:hover > .nav { 
    display:block; 
    position:absolute; 
    width:200px; 
    top:-2px; 
    left:50%; 
    z-index:1000; 
    border:1px #000 solid; 
} 

li:hover { 
    position:relative; 
    z-index:2000; 
} 

#basic li { 
    color:#000; 
} 

回答

0

當從float: left切換到float: right,你交換所有留下相關的屬性到右,從右到左?

實例:

  • 替換margin-left通過margin-right
  • 交換值。 margin 1px 2px 3px 4px成爲margin 1px 4px 3px 2px
0

除了在嘗試了上述的回答,您可以在使用position:relative,要麼左邊或右邊的屬性撞擊子菜單。他們會移動菜單,但是您指定的像素相對於自然下落的位置很多。