【问题标题】:how to have navbar background appear when the toggle button is active切换按钮处于活动状态时如何显示导航栏背景
【发布时间】:2017-12-29 02:31:30
【问题描述】:

我现在设置导航栏的方式是当我滚动到顶部时,导航栏背景是透明的,一旦我开始向下滚动,导航栏背景就会显示为黑色。我现在唯一遇到的问题是当我在移动设备上滚动到顶部时,当我单击导航栏切换下拉按钮时,下拉菜单上的背景是透明的,因为我一直向上滚动,但我想找到一种方法,让当下拉菜单一直滚动到浏览器顶部时出现黑色背景。

HTML

<nav class="navbar navbar-default top-of-page">
  <div class="container">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
        <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="#"><img src='/CMS_Static/Uploads/313864614C6F6F/fv-logo-3.gif' align="left"/></a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul id="navLinks" class="nav navbar-nav">
        <li><a href="http://www.floridavisions.com">Home</a></li>
        <li><a href="/services">Services</a></li>
        <li><a href="/stock">Stock Photography/ Footage</a></li>
        <li><a href="/contact">Contact</a></li>
      </ul>
    </div>
  </div>
</nav>

Java 脚本

<script>  $(window).on("scroll", function() {
    var scrollPos = $(window).scrollTop();
    if (scrollPos <= 0) {
        $('.navbar-default').addClass('top-of-page');
    } else {
        $('.navbar-default').removeClass('top-of-page');
    }
});
   </script>

CSS

.top-of-page {
        background-color: transparent;
    }
.navbar-default {
        background-color: black;
        background: rgba(0,0,0,.85);
        min-height: 90px;
        position: fixed;
        border-radius: 5px;
        border: none;
        width: 100%;
        z-index: 1; 
    } 
    #navLinks {
        padding-left: 20px;
    }
    #navLinks li {
        padding-top: 20px;
        padding-right: 10px;
    }
    #navLinks li a {
        color: white;
        font-size: 1.1em;
        font-weight: 700;
    }
    #navLinks li a:hover {
        color: #a6b1c4;
    }
    .navbar-brand img {
        height: 35px;
    } 

【问题讨论】:

    标签: html css twitter-bootstrap


    【解决方案1】:

    编写媒体查询。当设备宽度小于手机的 700 像素时,将背景颜色设置为...页面顶部类。 代码...

     @media only screen and (max-width: 500px) {
    .top-of-page{
       background-color: #000;
    }
    }
    

    【讨论】:

    • 唯一的问题是当下拉菜单不活动时会出现黑色背景。
    • 然后还要检查非活动类。并将css添加到该
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-18
    • 2013-08-19
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多