2016-02-16 124 views
0

我正在尝试为页面的左侧制作导航栏,但无法正常工作。链接颜色不会变为绿色,悬停功能不起作用,菜单的背景颜色仅覆盖链接本身,而不是从页面的顶部到底部。垂直导航栏无法正常工作

ul.nav { 
 
    background-color: #f1f1f1; 
 
    margin: 0px auto; 
 
    width: 30%: 
 
    height: 100%; 
 
    position: fixed; 
 
    overflow: hidden; 
 
} 
 
ul.nav li { 
 
    display: block; 
 
    height: 100%; 
 
    width: 10%; 
 
{ 
 
ul.nav li a { 
 
    display: block; 
 
    color: green; 
 
    text-decoration: none; 
 
} 
 
ul.nav li a:hover { 
 
    background-color: #555; 
 
    color: white; 
 
}
<ul class="nav"> 
 
    <li><a href="x">x</a></li> 
 
    <li><a href="x">x</a></li> 
 
    <li><a href="x">x</a></li> 
 
    <li><a href="x">x</a></li> 
 
    <li><a href="x">x</a></li> 
 
    <li><a href="x">x</a></li> 
 
</ul>

+1

请更新您的html –

回答

1

你在你的CSS 2个错别字:

width: 30%: 

你把一个冒号在最后,而不是一个分号,所以在这条规则的每个属性后宽度为忽略。

... 
width:10%; 
     { 
ul.nav li a { 
... 

你不小心把一个左括号({)在这里,而不是一个右括号(})。这会导致你之后的所有规则都被忽略。

+1

OP可能还需要摆脱'ul.nav li'的'height:100%'规则,否则一个'li'将跨越整个高度,只有一个可见(当然,除非这是他们的目标)。 – whrrgarbl