【问题标题】:Bootstrap navbar dropdown menu buttons not showing when navbar in collapsed hamburger当折叠的汉堡包中的导航栏时,引导导航栏下拉菜单按钮不显示
【发布时间】:2017-06-29 23:40:44
【问题描述】:

我有一个带有 css 媒体查询的 boostrap 导航栏,当屏幕小于一定尺寸时(对于移动设备),可以将其折叠并通过汉堡按钮打开。但是,我的导航栏中也有一个下拉菜单,当导航栏全屏展开时它工作正常,但是当我从导航栏的汉堡版本打开它时,下拉菜单中的按钮不显示。

宽屏 - 导航栏下拉效果很好:

窄屏(汉堡) - 下拉菜单按钮不显示:

以下是导航栏的 html 代码:

<nav class="navbar navbar-default" data-spy="affix" data-offset-top="900">
  <div class="container-fluid">
    <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="Son Of The Right Hand v.0.html#postWelcome">Son of the Right Hand</a>
    </div>


    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="active" id="home"><a href="Son Of The Right Hand v.0.html#postWelcome">Home <span class="sr-only">(current)</span></a></li>
        <li><a href="#">What is tSotRH?</a></li>
        <li><a href="#">About Me</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Streams <span class="caret"></span></a>
          <ul class="dropdown-menu pinkBackground">
            <li><a style="color:#062F4F" href="#">Stream 1</a></li>
            <li><a style="color:#062F4F" href="#">Stream 2</a></li>
            <li><a style="color:#062F4F" href="#">Stream 3</a></li>
          </ul>
        </li>
      </ul>


    </div>
</nav>

这是折叠导航栏的 CSS 媒体查询:

@media (min-width: 768px) {
    .navbar .navbar-nav {
        display: inline-block;
        float: none;
        vertical-align: top;

    }

    .navbar .navbar-collapse {
        text-align: center;
    }
}

这是我的导航栏的 CSS 代码:

.navbar-default {
    z-index: 1;
    background-color: #062F4F;
    border-color: #062F4F;
}
/* title */
.navbar-default .navbar-brand {
    color: #FFFFFF;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #813772;
}
/* link */
.navbar-default .navbar-nav > li > a {
    color: #FFFFFF;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: #813772;
}
.navbar-default .navbar-nav > .active > a, 
.navbar-default .navbar-nav > .active > a:hover, 
.navbar-default .navbar-nav > .active > a:focus {
    color: #FFFFFF;
    background-color: #813772;
}
.navbar-default .navbar-nav > .open > a, 
.navbar-default .navbar-nav > .open > a:hover, 
.navbar-default .navbar-nav > .open > a:focus {
    color: #FFFFFF;
    background-color: #062F4F;
}
/* caret */
.navbar-default .navbar-nav > .dropdown > a .caret {
    border-top-color: #000000;
    border-bottom-color: #000000;
}

任何帮助都非常感谢为什么导航栏下拉按钮在与汉堡包按钮折叠打开菜单时不显示(另外,我意识到这可能是一个非常愚蠢和简单的错误,但我不能找到它)

【问题讨论】:

    标签: html css twitter-bootstrap drop-down-menu navbar


    【解决方案1】:

    这工作正常,但锚颜色与背景相同,您必须为此使用类并使用媒体屏幕更改颜色或让移动设备上的默认引导颜色(灰色)

    <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>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
    <style>
      .navbar-default {
        z-index: 1;
        background-color: #062F4F;
        border-color: #062F4F;
    }
    /* title */
    .navbar-default .navbar-brand {
        color: #FFFFFF;
    }
    .navbar-default .navbar-brand:hover,
    .navbar-default .navbar-brand:focus {
        color: #813772;
    }
    /* link */
    .navbar-default .navbar-nav > li > a {
        color: #FFFFFF;
    }
    .navbar-default .navbar-nav > li > a:hover,
    .navbar-default .navbar-nav > li > a:focus {
        color: #813772;
    }
    .navbar-default .navbar-nav > .active > a, 
    .navbar-default .navbar-nav > .active > a:hover, 
    .navbar-default .navbar-nav > .active > a:focus {
        color: #FFFFFF;
        background-color: #813772;
    }
    .navbar-default .navbar-nav > .open > a, 
    .navbar-default .navbar-nav > .open > a:hover, 
    .navbar-default .navbar-nav > .open > a:focus {
        color: #FFFFFF;
        background-color: #062F4F;
    }
    /* caret */
    .navbar-default .navbar-nav > .dropdown > a .caret {
        border-top-color: #000000;
        border-bottom-color: #000000;
    }
    .navbar-default .navbar-nav  .pinkBackground>li>a {
        color:#062F4F ;
    }
    
    @media (min-width: 768px) {
        .navbar .navbar-nav {
            display: inline-block;
            float: none;
            vertical-align: top;
    
        }
    
        .navbar .navbar-collapse {
            text-align: center;
        }
    }
    
     </style>
    <nav class="navbar navbar-default" data-spy="affix" data-offset-top="900">
      <div class="container-fluid">
        <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="Son Of The Right Hand v.0.html#postWelcome">Son of the Right Hand</a>
        </div>
    
    
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
          <ul class="nav navbar-nav">
            <li class="active" id="home"><a href="Son Of The Right Hand v.0.html#postWelcome">Home <span class="sr-only">(current)</span></a></li>
            <li><a href="#">What is tSotRH?</a></li>
            <li><a href="#">About Me</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Streams <span class="caret"></span></a>
              <ul class="dropdown-menu pinkBackground">
                <li><a href="#">Stream 1</a></li>
                <li><a href="#">Stream 2</a></li>
                <li><a  href="#">Stream 3</a></li>
              </ul>
            </li>
          </ul>
    
    
        </div>
    </nav>

    【讨论】:

    • 在这种情况下,您必须在发布问题之前检查元素!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-11
    • 2019-12-23
    • 1970-01-01
    • 2021-08-19
    • 2016-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多