2014-01-30 488 views
1

我想將我的下拉菜單轉換爲下拉菜單。我在網上搜索了信息,但沒有幫助。在下拉菜單中轉換CSS下拉菜單

我的CSS代碼:

#nav 
{ 
margin: 0px; 
padding: 0px; 
position: absolute; 
top: 18px; 
display: block; 
left: 313px; 
} 

#nav > li 
{ 
list-style-type:none; 
float:left; 
display:block; 
margin:0px 10px; 
position:relative; 
padding:10px; 
width:100px; 
} 

#nav > li:hover ul 
{ 
display:block; 
} 

#nav > li:hover 
{ 
-moz-border-radius:10px; 
-webkit-border-radius:10px; 
} 

#nav li ul 
{ 
margin:0px; 
padding:0px; 
display:none; 
} 

#nav li ul li 
{ 
list-style-type:none; 
margin:10px 0 0 0; 
} 

#nav li ul li a 
{ 
display:block; 
padding:5px 10px; 
color:#bdb49f; 
text-decoration:none; 
} 

#nav li ul li:hover a 
{ 
color:#b15815; 
-moz-border-radius:5px; 
-webkit-border-radius:5px; 
} 

#nav li span 
{ 
cursor:pointer; 
margin:0px 10px; 
font-weight:bold; 
} 
+0

可能重複[下拉菜單,與純CSS打開/向上(http://stackoverflow.com/questions/7814186/drop-down-menu-that-opens-up-upward- with-pure-css) –

回答

5

解決之道在於讓孩子UL絕對定位。

這裏是一個工作示例:http://jsfiddle.net/3NmRP/

的「邊距」的「#nav」只是這裏舉例起見,你可以將其刪除。的

#nav{ 
    margin: 0px; padding: 0px; position: absolute; top: 18px; display: block; left: 313px; 
} 

#nav > li { 
    list-style-type:none; 
    float:left; display:block; 
    margin:0px 10px; 
    position:relative; 
    padding:10px; 
    width:100px; 
} 
#nav > li ul { 
    position:absolute; 
    bottom: 100%; 
} 
#nav li:hover > ul { 
    display:block; 
} 
#nav > li:hover{ 
    -moz-border-radius:10px; 
    -webkit-border-radius:10px; 
} 
#nav li ul{ 
    margin:0px; 
    padding:0px; 
    display:none; 
} 
#nav li ul li{ 
    list-style-type:none; 
    margin:10px 0 0 0; 
} 
#nav li ul li a{ 
    display:block; 
    padding:5px 10px; 
    color:#bdb49f; 
    text-decoration:none; 
} 
#nav li ul li:hover a { 
    color:#b15815; 
    -moz-border-radius:5px; 
    -webkit-border-radius:5px; 
} 
#nav li span{ 
    cursor:pointer; 
    margin:0px 10px; 
    font-weight:bold; 
} 

#nav { 
    margin-top: 100px; 
} 
+0

謝謝你的幫助。 – illusion

+0

非常歡迎。 – BenPog