Question:
There is a two-level menu with a dropdown submenu on bootstrap
. On mobile, when the menu collapses into a sandwich, the bottom dropdowns do not fit into the menu area and a scroll appears on the right side of it. How can this moment be corrected? feedl
.dropdown:hover > .dropdown-menu {
display: block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.css">
<nav class="navbar navbar-default navbar-static">
<div class="container-fluid">
<div class="navbar-header">
<button class="navbar-toggle collapsed" type="button" data-toggle="collapse" data-target=".js-navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#" style="padding:15px 15px;">Название проекта</a>
</div>
<div class="collapse navbar-collapse js-navbar">
<ul class="nav navbar-nav">
<li><a href="#">Главная</a>
</li>
<li class="dropdown">
<a id="drop1" href="#" class="dropdown-toggle" data-toggle="dropdown">
Меню
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li><a href="#">Текст подпункта</a>
</li>
<li><a href="#">Текст подпункта</a>
</li>
<li class="divider"></li>
<li><a href="#">Текст подпункта</a>
</li>
</ul>
</li>
<li class="dropdown">
<a id="drop1" href="#" class="dropdown-toggle" data-toggle="dropdown">
Меню
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li><a href="#">Текст подпункта</a>
</li>
<li><a href="#">Текст подпункта</a>
</li>
<li class="divider"></li>
<li><a href="#">Текст подпункта</a>
</li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a id="drop1" href="#" class="dropdown-toggle" data-toggle="dropdown">
Меню
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li><a href="#">Текст подпункта</a>
</li>
<li><a href="#">Текст подпункта</a>
</li>
<li class="divider"></li>
<li><a href="#">Текст подпункта</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
Answer:
A quick fix is to expose overflow-y: visible
on .navbar-collapse.in
:
.navbar-collapse.in {
overflow-y: visible;
}