2015-04-23 2 views
2

Я пытаюсь создать панель навигации в бутстрапе. Добавили настраиваемые стили в файле bootstrap-theme.min.css. Таким образом, я могу создать навигационную панель, но выпадающие пункты меню скрываются за основным меню в устройствах с маленькими экранами. Код и скриншоты вывода, как показано ниже:Выпадающие элементы меню скрываются за основным меню в настраиваемой навигационной панели bootstrap

Стили добавлены в самозагрузки-theme.min.css файла:

#custom-bootstrap-menu.navbar-default .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default { 
 
    font-size: 14px; \t 
 
    background-image:url('https://s3.amazonaws.com/static.bizmerlin.net/bg_header.png'); 
 
\t background-repeat:repeat-x; 
 
\t background-size:100% 100%; 
 
    border-width: 1px; 
 
    border-radius: 4px; 
 
\t height: 40px; 
 
\t background-color: rgba(70, 131, 176, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li, .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
    background-color: #528cb4; 
 
\t height: 38px; 
 
\t border: 1px solid #ffffff; 
 
\t margin-top:4px; 
 
\t border-radius: 5px; 
 
\t margin-right: 6px; 
 
\t font-size: 14px; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li>a, .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
\t line-height: 10px; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li:focus { 
 
\t background-color: #7fbb00; \t 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li.active>a, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>.active>a:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>.active>a:focus { 
 
    color: rgba(255, 255, 255, 1); 
 
    background-color: rgba(233, 129, 42, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle { 
 
    border-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:focus { 
 
    background-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle .icon-bar { 
 
    background-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:hover .icon-bar, 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:focus .icon-bar { 
 
    background-color: #4683b0; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu { 
 
    background-color: #528cb4; 
 
    margin-top:10px; 
 
} 
 

 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a { 
 
    color: #ffffff; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus { 
 
    color: #aeff00; 
 
    background-image: none; 
 
    background-color: #528cb4; 
 
} 
 

 
#custom-bootstrap-menu.navbar-default .navbar-nav > .open > a { 
 
\t background-image: none; 
 
\t background-color: #7fbb00; 
 
\t height: 36px; 
 
\t border-radius: 4px; 
 
} 
 
.caret { 
 
\t border-left: 4px solid transparent; 
 
    border-right: 4px solid transparent; 
 
    border-top: 4px solid; 
 
    display: inline-block; 
 
    height: 0; 
 
    margin-left: 2px; 
 
    vertical-align: middle; 
 
    width: 0; 
 
}

HTML код для навигационной панели является:

<!DOCTYPE html> 
 

 
    <html lang="en"> 
 

 
    <head> 
 

 
    <meta charset="utf-8"> 
 

 
    <title>Bootstrap 3 Responsive Layout Example</title> 
 

 
    <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"> 
 

 
    <link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css"> 
 

 
    <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script> 
 
    <script type="text/javascript" src="js/bootstrap.min.js"></script> 
 
<style type="text/css"> 
 

 
\t </style> 
 
    </head> 
 

 
    <body> 
 

 
     <nav id="custom-bootstrap-menu" class="navbar navbar-default " role="navigation"> 
 
    <div class="container"> 
 
     <div class="navbar-header"><a class="navbar-brand" href="#">Home</a> 
 
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-menubuilder"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span> 
 
      </button> 
 
     </div> 
 
     <div class="collapse navbar-collapse navbar-menubuilder" > 
 
      <ul class="nav navbar-nav navbar-left"> 
 
       <li style="background-color:#e9812a;"><a href="/">Home1</a> 
 
       </li> 
 
       <li><a href="/products">Products</a> 
 
       </li> 
 
       <li><a href="/about-us">About Us</a> 
 
       </li> 
 
       <li><a href="/contact">Contact Us</a> 
 
       </li> 
 
\t \t \t \t <li class="dropdown"> 
 
\t \t \t \t \t <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">Page 1 <span class="caret"></span></a> 
 
      <ul class="dropdown-menu" > 
 
      <li><a href="#">Page 1-1</a></li> 
 
      <li><a href="#">Page 1-2</a> 
 
\t \t \t \t <ul class="dropdown-menu sub-menu"> 
 
\t \t \t \t \t <li><a href="">asf</a></li> 
 
\t \t \t \t </ul> 
 
\t \t \t </li> 
 
      <li><a href="#">Page 1-3</a></li> 
 
      </ul> 
 
\t \t \t \t </li> 
 
\t \t \t \t <li><a href="/contact">Contact Us</a> 
 
       </li> 
 
\t \t \t \t </ul> 
 
\t \t \t \t <ul class="nav navbar-nav navbar-right"> 
 
\t \t \t \t <li><a href="">Analytics</a></li> 
 
      </ul> 
 
     </div> 
 
    </div> 
 
</nav> \t 
 
<div class="container">   
 

 
</div> 
 
</body> 
 
</html>

Выходной сигнал: enter image description here

Выпадающее меню скрывается за контактом и Anlytics. Пожалуйста, помогите мне в решении этой проблемы. Заранее спасибо. Дайте мне знать, если мой вопрос не ясен.

JSFiddle здесь http://jsfiddle.net/38fmg5h3/2/

+0

Проблема устранена? –

ответ

2

UPDATE: Я добавил это к вашему CSS

#custom-bootstrap-menu.navbar-default .navbar-brand{ 
    height:38px; 
} 

и удалены height:38px; из #custom-bootstrap-menu.navbar-default .navbar-nav>li, .navbar-brand. Это должно делать свое дело.

#custom-bootstrap-menu.navbar-default .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default { 
 
    font-size: 14px; \t 
 
    background-image:url('https://s3.amazonaws.com/static.bizmerlin.net/bg_header.png'); 
 
\t background-repeat:repeat-x; 
 
\t background-size:100% 100%; 
 
    border-width: 1px; 
 
    border-radius: 4px; 
 
\t height: 40px; 
 
\t background-color: rgba(70, 131, 176, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-brand{ 
 
    height:38px; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li, .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
    background-color: #528cb4; 
 
\t border: 1px solid #ffffff; 
 
\t margin-top:4px; 
 
\t border-radius: 5px; 
 
\t margin-right: 6px; 
 
\t font-size: 14px; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li>a, .navbar-brand { 
 
    color: rgba(255, 255, 255, 1); 
 
\t line-height: 10px; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li:focus { 
 
\t background-color: #7fbb00; \t 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>li.active>a, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>.active>a:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav>.active>a:focus { 
 
    color: rgba(255, 255, 255, 1); 
 
    background-color: rgba(233, 129, 42, 1); 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle { 
 
    border-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:focus { 
 
    background-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle .icon-bar { 
 
    background-color: #e9812a; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:hover .icon-bar, 
 
#custom-bootstrap-menu.navbar-default .navbar-toggle:focus .icon-bar { 
 
    background-color: #4683b0; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu { 
 
    background-color: #528cb4; 
 
    margin-top:10px; 
 
} 
 

 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a { 
 
    color: #ffffff; 
 
} 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a:hover, 
 
#custom-bootstrap-menu.navbar-default .navbar-nav > li > .dropdown-menu > li > a:focus { 
 
    color: #aeff00; 
 
    background-image: none; 
 
    background-color: #528cb4; 
 
} 
 

 
#custom-bootstrap-menu.navbar-default .navbar-nav > .open > a { 
 
\t background-image: none; 
 
\t background-color: #7fbb00; 
 
\t height: 36px; 
 
\t border-radius: 4px; 
 
} 
 
.caret { 
 
\t border-left: 4px solid transparent; 
 
    border-right: 4px solid transparent; 
 
    border-top: 4px solid; 
 
    display: inline-block; 
 
    height: 0; 
 
    margin-left: 2px; 
 
    vertical-align: middle; 
 
    width: 0; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<nav id="custom-bootstrap-menu" class="navbar navbar-default " role="navigation"> 
 
    <div class="container"> 
 
     <div class="navbar-header"><a class="navbar-brand" href="#">Home</a> 
 
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-menubuilder"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span> 
 
      </button> 
 
     </div> 
 
     <div class="collapse navbar-collapse navbar-menubuilder" > 
 
      <ul class="nav navbar-nav navbar-left"> 
 
       <li style="background-color:#e9812a;"><a href="/">Home1</a> 
 
       </li> 
 
       <li><a href="/products">Products</a> 
 
       </li> 
 
       <li><a href="/about-us">About Us</a> 
 
       </li> 
 
       <li><a href="/contact">Contact Us</a> 
 
       </li> 
 
\t \t \t \t <li class="dropdown"> 
 
\t \t \t \t \t <a class="dropdown-toggle" data-toggle="dropdown" href="#" aria-expanded="false">Page 1 <span class="caret"></span></a> 
 
      <ul class="dropdown-menu" > 
 
      <li><a href="#">Page 1-1</a></li> 
 
      <li><a href="#">Page 1-2</a> 
 
\t \t \t \t <ul class="dropdown-menu sub-menu"> 
 
\t \t \t \t \t <li><a href="">asf</a></li> 
 
\t \t \t \t </ul> 
 
\t \t \t </li> 
 
      <li><a href="#">Page 1-3</a></li> 
 
      </ul> 
 
\t \t \t \t </li> 
 
\t \t \t \t <li><a href="/contact">Contact Us</a> 
 
       </li> 
 
\t \t \t \t </ul> 
 
\t \t \t \t <ul class="nav navbar-nav navbar-right"> 
 
\t \t \t \t <li><a href="">Analytics</a></li> 
 
      </ul> 
 
     </div> 
 
    </div> 
 
</nav> \t 
 
<div class="container">   
 

 
</div>

Рабочая JSFiddle Здесь http://jsfiddle.net/38fmg5h3/1/

+0

Спасибо за ответ. Но это не работает. Он отображает раскрывающееся меню, но скрывает последний пункт меню «Аналитика». Кроме того, дизайн был искажен на большом экране при нажатии выпадающего меню. – Tiya

+0

@Tiya Если я запустил фрагмент кода в своем ответе, он отобразит последний пункт меню «Аналитика». В каком состоянии он не отображает пункт меню «Аналитика»? И это работает и на моем JSFiddle. –

+0

На самом деле я использую bootstrap, и этих файлов там нет. Может быть, это и есть причина. Попробовал это по моему коду в моей системе. – Tiya

Смежные вопросы