user3242861
user3242861

Reputation: 1929

Bootstrap sub menu just with hover

I have menu with sub menus. When i hover an li it works fine and show me the sub menu and hide. But if i click in menu it shows the sub menu but doesn't hide. I don't want allow to click on menu. Just show sub menu with hover.

<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button"
  aria-haspopup="true" aria-expanded="false">menu</a>
  <ul class="dropdown-menu">
    <li><a href="/<?php echo App::getLocale()?>/profile">submenu 1</a></li>
    <li><a href="/<?php echo App::getLocale()?>/history">submenu 2</a></li>
    <li><a href="/<?php echo App::getLocale()?>/brands">submenu 3</a></li>
    <li><a href="/<?php echo App::getLocale()?>/manufacturing">submenu 4</a></li>
  </ul>
</li>

How can i solve that?

Thank you

Upvotes: 0

Views: 760

Answers (2)

Geee
Geee

Reputation: 2243

Here is the working solution:

body {
    padding-top: 60px;
    padding-bottom: 40px;
}


.dropdown-menu .sub-menu {
    left: 100%;
    position: absolute;
    top: 0;
    visibility: hidden;
    margin-top: -1px;
}

.dropdown-menu li:hover .sub-menu {
    visibility: visible;
}

.dropdown:hover .dropdown-menu {
    display: block;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>


<ul class="nav nav-pills">
<li class="active"><a href="#">Regular link</a></li>
<li class="dropdown">
  <a href="#" data-toggle="dropdown" class="dropdown-toggle">Dropdown <b class="caret"></b></a>
  <ul class="dropdown-menu" id="menu1">
    <li>
        <a href="#">2-level Menu <i class="icon-arrow-right"></i></a>
        <ul class="dropdown-menu sub-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li class="nav-header">Nav header</li>
            <li><a href="#">Separated link</a></li>
            <li><a href="#">One more separated link</a></li>
        </ul>
    </li>
    <li><a href="#">Another action</a></li>
    <li><a href="#">Something else here</a></li>
    <li class="divider"></li>
    <li><a href="#">Separated link</a></li>
  </ul>
</li>
<li class="dropdown">
  <a href="#">Menu</a>
</li>
<li class="dropdown">
  <a href="#">Menu</a>
</li>
</ul>
For the responsive you can find demo from here

Upvotes: 1

Babasaheb
Babasaheb

Reputation: 11

Please add below css in your css file

.open > .dropdown-menu{display:none;}

li.dropdown:hover .dropdown-menu {display: block;}

Upvotes: 1

Related Questions