菜单向右扩展一点

时间:2013-09-18 10:16:16

标签: html css menu expand

我的菜单向右扩展了一点,我找不到原因。我是编码的新手。

如果我把#nav ul ul位置放到相对位置,它会扩展菜单单元格,如果我把它放到绝对位置我没有这样做,但是菜单出现在下一个菜单单元格下面。

这是我的.HTML

<div id="navWrap">
        <div id="nav">
            <ul>
                <li><a href="#" class="smoothScroll">Home </a>&nbsp;&nbsp;</li>
                <li><a href="#" class="smoothScroll">Meniu 1</a>
                    <ul>
                        <li><a href="#">Sm1.1</a></li>
                        <li><a href="#">Sm1.2</a></li>
                        <li><a href="#">Sm1.3</a></li>
                    </ul>
                </li>
                <li><a href="#" class="smoothScroll">Meniu 2 </a>
                    <ul>
                        <li><a href="#">Sm2.1</a></li>
                        <li><a href="#">Sm2.2</a></li>
                        <li><a href="#">Sm2.3</a></li>
                    </ul>
                </li>
                <li><a href="#" class="smoothScroll">Meniu 3 </a>
                    <ul>
                        <li><a href="#">Sub meniu 3.1</a></li>
                        <li><a href="#">Sub meniu 3.2</a></li>
                        <li><a href="#">Sub meniu 3.3</a></li>
                    </ul>
                </li>
                <li><a href="#" class="smoothScroll">Meniu 4 </a>
                    <ul>
                        <li><a href="#">Sub meniu 4.1</a></li>
                        <li><a href="#">Sub meniu 4.2</a></li>
                        <li><a href="#">Sub meniu 4.3</a></li>
                    </ul>
                </li>
                <li><a href="#" class="smoothScroll">Meniu 5 </a>
                    <ul>
                        <li><a href="#">Sub meniu 5.1</a></li>
                        <li><a href="#">Sub meniu 5.2</a></li>
                        <li><a href="#">Sub meniu 5.3</a></li>
                    </ul>
                </li>
                <li><a href="#" class="smoothScroll">Meniu 6 </a>
                    <ul>
                        <li><a href="#">Sub meniu 6.1</a></li>
                        <li><a href="#">Sub meniu 6.2</a></li>
                        <li><a href="#">Sub meniu 6.3</a></li>
                    </ul>
                </li>
            </ul>
            <br class="clearleft"/>
        </div>
    </div>

这是我的.CSS

#navWrap {
height:30px;
background:#0d364c;
margin:0px;
padding:0px;
width:705px;
}

#nav {
padding:5px;
margin:0px;
background:#0d364c;
height:25px;
font-size:15px;
width:700px;
}

#nav ul {
   margin: 0px;
   padding: 0px ;    
   list-style: none;
   position: relative;
   display: block;
}

#nav ul:after {
    content: "";
    clear: both; 
    display: block;
}

#nav li {
   padding:5px 0px;
   background-color: #0d364c;
   margin: 0 0 0 0;
   color: #FFF;
   list-style-type: none;
   border-right: 1px solid #fff;
   display:inline;
   font-family:sans-serif;
   height:30px;
   width:70px;
}

#nav li:last-child{
border-right:none;
}

#nav li a {
   color: #FFF;  
   text-decoration: none;    

}

#nav li a:hover {
   text-decoration: underline; 
   background:#577283;
}

#nav ul ul {
display:none;
border-radius: 0px; 
padding: 2px;
position: absolute; 
height:30px;
background:black;
top:30px;
}

#nav ul  li:hover>ul{
display:inline-table;
float:none;
}

#nav ul li:hover{
background:#577283;
}

#nav ul ul li {
    position: relative;
    float:none;
    border:0px;
    padding:0px;
    width:70px;
}

#nav ul ul li a {
    display: block; 
    text-decoration: none;
    height:40px;
    width:70px;
    color: white;
    background:gray;
    text-align:center;
    padding: 5px;
    margin: 1px;    
}

这是我的JsFiddle http://jsfiddle.net/tHUWc/

谢谢你,Iosif

2 个答案:

答案 0 :(得分:3)

设置#nav li { position: relative; }#nav ul ul { left: 0; }

实施例: http://jsfiddle.net/tHUWc/2/

答案 1 :(得分:0)

你试过使用浮动吗?我通过浮动#nav

来修正“向右扩展”

请参阅此示例http://jsfiddle.net/monnoval/tHUWc/3/