CSS Jquery垂直导航菜单带有水平子菜单 [英] CSS Jquery vertical navigation menu with horizontal submenus

查看:108
本文介绍了CSS Jquery垂直导航菜单带有水平子菜单的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想建立一个如下的导览选单:

I'd like to create a navigation menu like this:

|main-item1|
|main-item2|    |sub-item1| |sub-item2| |sub-item3|
|main-item3|
|main-item4|

我现在看到的是:

|main-item1|
|main-item2|    
     |sub-item1| |sub-item2| |sub-item3|  |main-item3|  |main-item4|

我在stackoverflow上发现了这样的另一个问题,但是我无法适应代码。

I've found another question like this here on stackoverflow, but I couldn't manage to adapt the code.

我的HTML代码是:

        <div>
        <nav>
        <ul id="mainmenu">
                <li><a href="chi_siamo">Chi siamo</a></li>
                <li><a href="servizi">Servizi</a>
                <ul class="submenu">
                    <li>
                        <a href="speciale">speciale</a>
                    </li>
                    <li>
                        <a href="#">privati</a>
                    </li>
                    <li>
                        <a href="">aziende</a>
                    </li>
                    <li>
                        <a href="">cerimonie</a>
                    </li>
                    <li>
                        <a href="">consulenza</a>
                    </li>
                </ul>
                </li>
                <li><a href="location">Location</a></li>
                <li><a href="contatti">contatti</a></li>
                <li class="last"><a href="partner">partner</a></li>
                </ul>
                </nav>
    </div>

这是css:

    #mainmenu {
  position: fixed;
  left: 20px;
  top: 50%;
  z-index: 999999;
  margin-top:-200px;
}

  #mainmenu li {
    height: 40px;
    margin: 5px;
    position: relative;
  }

  #mainmenu a {
    background: none repeat scroll 0 0 #333;
    color: #fff;
    display: block;
    font-family: Folio;
    font-size: 30px;
    padding: 2px 15px;
    text-decoration: none;
    text-transform: uppercase;
    width: 160px;
    height: 40px;
    /*background: url(Images/dotnav.png) 0 100% no-repeat;*/
 /*text-indent: -10000px;*/
    overflow: hidden;
  }


  #mainmenu a:hover,
  #mainmenu li.active a {
    background-position: 0 0;

  }
.submenu
{
    list-style-type: none; 
    position:relative;
    float:left;
}
.submenu li
{
    display: inline; 
    float:left; 
    position:relative
}

,也是因为我想在悬停时添加一些效果,但我认为最好是将所有内容与CSS对齐。

It would be ok to use some jquery plugin, also because I'd like to add some effect on hovering, but I thought it was better to align everything with css first.

感谢

推荐答案

这是你可能想要的:

css:

#mainmenu {
  position: fixed;
  left: 20px;
  top: 50%;
  z-index: 999999;
  margin-top:-200px;
}

  #mainmenu li {
    height: 40px;
    margin: 5px;
    position: relative;
  }

  #mainmenu a {
    background: none repeat scroll 0 0 #333;
    color: #fff;
    display: block;
    font-family: Folio;
    font-size: 30px;
    padding: 2px 15px;
    text-decoration: none;
    text-transform: uppercase;
    width: 160px;
    height: 40px;
    /*background: url(Images/dotnav.png) 0 100% no-repeat;*/
 /*text-indent: -10000px;*/
    overflow: hidden;
  }


  #mainmenu a:hover,
  #mainmenu li.active a {
    background-position: 0 0;

  }
.submenu
{
    list-style-type: none; 
    position:relative;
    float:left;

}
.submenu li
{
    display: inline; 
    float:left; 
    position:relative;

}
#mainmenu .submenu li{
    margin:0px; 
}

和html

<div>
        <nav>
        <ul id="mainmenu">
                <li><a href="chi_siamo">Chi siamo</a></li>
                <li><a href="servizi" style="float:left">Servizi</a>
                <ul class="submenu">
                    <li>
                        <a href="speciale">speciale</a>
                    </li>
                    <li>
                        <a href="#">privati</a>
                    </li>
                    <li>
                        <a href="">aziende</a>
                    </li>
                    <li>
                        <a href="">cerimonie</a>
                    </li>
                    <li>
                        <a href="">consulenza</a>
                    </li>
                </ul>
                </li>

                <li style="clear:both;"><a href="location">Location</a></li>
                <li><a href="contatti">contatti</a></li>
                <li class="last"><a href="partner">partner</a></li>
                </ul>
                </nav>
    </div>

在html中,我在servizi中添加了float left,并在css中添加了:

In html I added at "servizi" float left and in css i added :

#mainmenu .submenu li{
        margin:0px; 
    }

现在他们处于同一级别。

So they are now at the same level.

这篇关于CSS Jquery垂直导航菜单带有水平子菜单的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆