【问题标题】:Bootstrap - Navbar Collapse menu not displayingBootstrap - 导航栏折叠菜单不显示
【发布时间】:2016-10-28 02:15:40
【问题描述】:

我的导航栏没有正确折叠。当窗口变小时,导航栏完全消失,替换手风琴菜单不会显示。想法?

<section id='mainnavbar'>
    <div class="navbar">

        <!-- Header -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed"  data-toggle="collapse" data-target="#mainnavbar-link">
                <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=<%= root_path %>  >
                <!-- <%= t('company_name') %> -->
                        <%= render_logo %>
            </a>
        </div>
        <!-- Navbar Links -->
        <div id='mainnavbar-link' class="pull-right collapse navbar-collapse">      
                    <ul class="nav navbar-nav">
                        <% Page.roots.menu.each do |menu_item| %>
                                <%= render partial: 'shared/nav/nav_pages_item', locals: {:menu_item => menu_item} %>
                        <%end%>
                    </ul>
                </li>
            </ul>
        </div>
    </div>
</section>

【问题讨论】:

    标签: css ruby-on-rails twitter-bootstrap ruby-on-rails-4 twitter-bootstrap-3


    【解决方案1】:

    我假设您是指汉堡菜单按钮。它确实会显示,但您看不到它,因为它与背景颜色相同。

    如果您想使用默认引导导航栏,您需要更改第一个 div 以包含一个额外的类:

    &lt;div class="navbar navbar-default"&gt;

    jsfiddle:https://jsfiddle.net/2Lxkpzwc/3/

    【讨论】:

    • 这使得汉堡菜单出现,但改变了所有的颜色。我该如何调整它们?我想要栏,即页面的宽度是透明的。汉堡菜单应该是黑色透明的。
    • 在我的 CSS 中添加了一个导航栏自定义类,一切正常。
    • 您需要在 bootstrap 下包含您自己的 css 文件并添加您自己的 css 样式代码。您可以覆盖现有的 boostrap 类或将您自己的类添加到 html 中。
    • 刚看到你上面的评论..正是我在说什么:D
    【解决方案2】:

    您的代码看起来不错。我目前正在一个网站上工作,它的导航栏就像你的一样,在我看来,它和我的一模一样。以防万一,您的页面上有 jquery 脚本吗?

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    

    【讨论】:

    • 是的,我有 Jquery。不幸的是,它不起作用。我将您的代码行添加到页面底部以进行仔细检查。我的代码或支持文件一定有问题。
    • 第 28 行和第 29 行的标签缺少打开
    • 删除了第 28 和 29 行,它们是不必要的,但不是问题的原因。
    【解决方案3】:

    确保包含所有需要的内容。而且它也会在后面消失,所以只需使用z-index:1000position:absolute 来解决这个问题,如果你进入检查元素并将鼠标悬停在sectiondiv 它应该会告诉你它在屏幕上的位置是

    【讨论】:

      【解决方案4】:

      添加自定义类

       <div class="navbar navbar-custom">
      

      这使得汉堡菜单可见

      CSS

      $bgDefault      : none;
      $bgHighlight    : black;
      $colDefault     : grey;
      $colHighlight   : blue;
      $dropDown       : false;
      
      
      
      .navbar-custom {
        background-color: $bgDefault;
        border-color: $bgHighlight;
        .navbar-brand {
          color: $colDefault;
          &:hover, &:focus {
            color: $colHighlight; }}
        .navbar-text {
          color: $colDefault; }
        .navbar-nav {
          > li {
            > a {
              color: $colDefault;
              &:hover,  &:focus {
                color: $colHighlight; }}
            @if $dropDown {
              > .dropdown-menu {
                background-color: $bgDefault;
                > li {
                  > a {
                    color: $colDefault;
                    &:hover,  &:focus {
                      color: $colHighlight;
                      background-color: $bgHighlight; }}
                  > .divider {
                    background-color: $bgHighlight;}}}}}
          @if $dropDown {
            .open .dropdown-menu > .active {
              > a, > a:hover, > a:focus {
                color: $colHighlight;
                background-color: $bgHighlight; }}}
          > .active {
            > a, > a:hover, > a:focus {
              color: $colHighlight;
              background-color: $bgHighlight; }}
          > .open {
            > a, > a:hover, > a:focus {
              color: $colHighlight;
              background-color: $bgHighlight; }}}
        .navbar-toggle {
          border-color: $bgHighlight;
          &:hover, &:focus {
            background-color: $bgHighlight; }
          .icon-bar {
            background-color: $colDefault; }}
        .navbar-collapse,
        .navbar-form {
          border-color: $colDefault; }
        .navbar-link {
          color: $colDefault;
          &:hover {
            color: $colHighlight; }}}
      @media (max-width: 767px) {
        .navbar-custom .navbar-nav .open .dropdown-menu {
          > li > a {
            color: $colDefault;
            &:hover, &:focus {
              color: $colHighlight; }}
          > .active {
            > a, > a:hover, > a:focus {
              color: $colHighlight;
              background-color: $bgHighlight; }}}
      }
      

      【讨论】:

        猜你喜欢
        • 2014-07-18
        • 2017-08-29
        • 2015-10-29
        • 1970-01-01
        • 2021-04-30
        • 1970-01-01
        • 2018-08-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多