2016-03-03 212 views
1

我有一个自举导航栏,我想上色。只有当导航栏上的按钮被点击时才会显示下拉菜单,而不是悬停,因此适用于移动用户。Bootstrap 3导航栏颜色下拉按钮,当激活

现在它显示为白色,并且按钮处于活动状态时文本颜色会变黑。当它被盘旋时,它会变成更深的蓝色阴影,这是我希望它在活动时保持蓝色的阴影。我已经尝试了很多其他的例子,例如.active> a:focus和.active> a:active,但都不起作用。

的导航栏的HTML代码低于:

<nav id="menu" class="navbar navbar-default"> 

      <div class="container-fluid" id="fullNav"> 

       <div class="navbar-header"> 

        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbarBody" aria-expanded="false" id="collapsedNavbarExpand"> 
         <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="index.html">Logo</a> 

       </div> 

       <div class="collapse navbar-collapse" id="navbarBody"> 

        <ul class="nav navbar-nav"> 

         <li class="dropdown"> 

          <a href="#" class="dropdown-toggle navOption" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> 
           Tourism 
           <span class="caret"> </span> 

          </a> 

          <ul class="dropdown-menu"> 

           <li> <a href="../Pages/tourismHub.html"> <b> Tourism Hub </b> </a> </li> 
           <li role="separator" class="divider"></li> 
           <li> <a href="../Pages/eatingOut.html"> Eating Out </a> </li> 
           <li> <a href="../Pages/attractions.html"> Attractions </a> </li> 
           <li> <a href="../Pages/events.html"> Events </a> </li> 
           <li> <a href="../Pages/history.html"> Town History </a> </li> 

          </ul> 

         </li> 

         <li class="dropdown"> 

          <a href="#" class="dropdown-toggle navOption" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> 

           Residents 
           <span class="caret"> </span> 

          </a> 

          <ul class="dropdown-menu"> 

           <li> <a href="../Pages/residentsHub.html"> <b> Residents Hub </b> </a> </li> 
           <li role="separator" class="divider"></li> 
           <li> <a href="../Pages/events.html"> Events </a> </li> 
           <li> <a href="../Pages/eatingOut.html"> Eating Out </a> </li> 
           <li> <a href="../Pages/history.html"> History </a> </li> 

          </ul> 

         </li> 

         <li class="dropdown"> 

          <a href="#" class="dropdown-toggle navOption" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> 

           Prospective Residents 
           <span class="caret"> </span> 

          </a> 

          <ul class="dropdown-menu"> 

           <li> <a href="../Pages/prospectiveResidentsHub.html"> <b> Prospective Residents Hub </b> </a> </li> 
           <li role="separator" class="divider"></li> 
           <li> <a href="../Pages/realEstate.html"> Real Estate </a> </li> 
           <li> <a href="../Pages/attractions.html"> Attractions </a> </li> 
           <li> <a href="../Pages/history.html"> Town History </a> </li> 
           <li> <a href="../Pages/eatingOut.html"> Eating Out </a> </li> 

          </ul> 

         </li> 

         <li class="dropdown"> 

          <a href="#" class="dropdown-toggle navOption" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> 

           Locations 
           <span class="caret"> </span> 

          </a> 

          <ul class="dropdown-menu"> 

           <li> <a href="../Pages/locationsHub.html"> <b> Locations Hub </b> </a> </li> 
           <li role="separator" class="divider"></li> 
           <li> <a href="../Pages/marina.html"> Marina </a> </li> 
           <li> <a href="../Pages/highStreet.html"> High Street </a> </li> 
           <li> <a href="../Pages/parishWharf.html"> Parish Wharf </a> </li> 
           <li> <a href="../Pages/lakeGrounds.html"> Lake Grounds </a> </li> 

          </ul> 

         </li> 

         <li> <a href="../Pages/map.html" class="navOption"> Map </a> </li> 

        </ul> 

       </div> 

      </div> 

     </nav> 

缩进有点破损,由于其粘贴了我的网站。 CSS代码可以在JSFiddle中看到。 bootstrap.js,bootstrap.css和jquery-2.2.0.js被进一步导入页面。

以下链接了一个可用的JSFiddle示例。要查看实际效果,您必须展开结果窗口,以便导航栏不会折叠。您也必须从一个下拉按钮中删除您的鼠标一旦点击看到它变成白色。

这里是的jsfiddle链接:https://jsfiddle.net/hezejk88/9/

的任何解决方案,将是巨大的感谢!

回答

3

那种风格的应用时,下拉既.opena元素集中:

.navbar-default .navbar-nav>.open>a, 
.navbar-default .navbar-nav>.open>a:hover, 
.navbar-default .navbar-nav>.open>a:focus { 
    background-color: #e7e7e7; 
    color: #555; 
} 

您当前的倍率不迎合聚焦式的,所以你只需要补充一点,在:

.navbar-default .navbar-nav > .open > a, 
.navbar-default .navbar-nav > .open > a:hover, 
.navbar-default .navbar-nav > .open > a:focus, /* <- This one was missing. */ 
.navbar-default .navbar-nav > .open > a:active { 
    color: #ffffff; 
    background-color: #084c78; 
} 

Amended JSFiddle demo。该修复应用于第53行。

+0

啊,因为你解释得更好我删除了我的答案! :) –

0

试试这个js。

<script> 
$(document).ready(function() { 
    var url = document.URL; 
    $(".list-unstyled li").each(function() { 
     var y = $(this).children("a").attr('href'); 
     var pieces = url.split('/'); 
     //var routeData= route.substring(0, route.indexOf('?')); 
     var abc= pieces[pieces.length - 1].substring(0,pieces[pieces.length - 1].indexOf('?')); 
     if(abc) 
     { 
      if (pieces[pieces.length - 1].substring(0,pieces[pieces.length - 1].indexOf('?')) == y) 
      { 
       if ($(this).parents(".has-submenu").length == 1) 
       { 
        $(this).addClass("active"); 
        $(this).parents(".has-submenu").addClass("active") 
       } 
       else 
       { 
        $(this).addClass("active"); 
       } 
      } 
     } 
     else 
     { 
      if (pieces[pieces.length - 1] == y) 
      { 
       if ($(this).parents(".has-submenu").length == 1) 
       { 
        $(this).addClass("active"); 
        $(this).parents(".has-submenu").addClass("active") 
       } 
       else 
       { 
        $(this).addClass("active"); 
       } 
      } 
     } 
    }); 

}); 
</script> 
+0

当$(this).addClass(“active”);你可以创建css并添加addClass(“active”);这 –

+0

老兄srsly这可以用1行代码在css –

+0

好吧没问题这个代码为当前菜单活跃或下拉菜单积极检查和积极与CSS –