Twitter Bootstrap 3.3.4:带右对齐下拉菜单的导航栏始终可见/可用

Twitter Bootstrap 3.3.4: navbar with right aligned dropdown menu always visible / usable

大家晚上好,我已经很久了 "lurker",首先要非常感谢大家提供的所有重要信息和辛勤工作。我发现自己面临着一些挑战/问题。

我正在尝试设置我的主要导航(默认导航栏),使其在桌面版和移动版上都能正常运行。

我想设置一个右侧菜单 link 作为下拉菜单,但它在网站的桌面版和移动版上都可用。

以下是我心中的一些图片:

桌面视图最右边有徽标,links 在旁边,最右边 link (Link #3) 有下拉菜单(见下文):

Tablet/mobile 宽度使徽标保持在左侧,隐藏 links #1 和 #2 并且仍然保持 Link #3 下拉菜单与菜单一起可用在最右边切换(见下文):

当菜单打开时(点击汉堡包),菜单显示正常并显示 Links #1,#2。

你想做点什么吗like this

HTML

    <nav class="navbar navbar-default">
  <div class="container-fluid">
    <!-- 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">
        <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="#">Brand</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse navbar-left" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
        <li><a href="#">Link</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
            <li class="divider"></li>
            <li><a href="#">One more separated link</a></li>
          </ul>
        </li>
      </ul>
      <form class="navbar-form navbar-left" role="search">
        <div class="form-group">
          <input type="text" class="form-control" placeholder="Search">
        </div>
        <button type="submit" class="btn btn-default">Submit</button>
      </form>

    </div><!-- /.navbar-collapse -->

      <ul class="nav navbar-nav navbar-right mobileNav pull-right">
        <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                    <ul class="dropdown-menu" role="menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
            <li class="divider"></li>
            <li><a href="#">One more separated link</a></li>
          </ul>
                </li>
            </ul>

  </div><!-- /.container-fluid -->
</nav>

CSS

.mobileNav {
    position: absolute;
    right: 20px;
    top: 0px;
} 
@media only screen 
and (min-device-width : 414px) 
and (max-device-width : 736px) { 
    .mobileNav {
        position: absolute;
        right: 90px;
        top: -2px;
    }
}
@media only screen 
and (min-device-width : 320px) 
and (max-device-width : 568px) {
    .mobileNav {
        position: absolute;
        right: 90px;
        top: -2px;
    }
}

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px)
and (-webkit-min-device-pixel-ratio: 1)  { 
    .mobileNav {
        position: absolute;
        right: 90px;
        top: -2px;
    }
}
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px)
and (-webkit-min-device-pixel-ratio: 2) {
    .mobileNav {
        position: absolute;
        right: 90px;
        top: -2px;
    }
}

更新代码:

link更新:http://codepen.io/MaGiO/pen/eNYaep

HTML:

<nav class="navbar navbar-default">
        <div class="container-fluid">
                <!-- 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">
                                <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="#">Brand</a>
                </div>

                <!-- Collect the nav links, forms, and other content for toggling -->
                <div class="collapse navbar-collapse navbar-left" id="bs-example-navbar-collapse-1">
                        <ul class="nav navbar-nav">
                                <li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
                                <li><a href="#">Link</a></li>
                                <li class="dropdown">
                                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                                        <ul class="dropdown-menu" role="menu">
                                                <li><a href="#">Action</a></li>
                                                <li><a href="#">Another action</a></li>
                                                <li><a href="#">Something else here</a></li>
                                                <li class="divider"></li>
                                                <li><a href="#">Separated link</a></li>
                                                <li class="divider"></li>
                                                <li><a href="#">One more separated link</a></li>
                                        </ul>
                                </li>
                        </ul>
                        <form class="navbar-form navbar-left" role="search">
                                <div class="form-group">
                                        <input type="text" class="form-control" placeholder="Search">
                                </div>
                                <button type="submit" class="btn btn-default">Submit</button>
                        </form>

                </div>
                <!-- /.navbar-collapse -->

                <ul class="nav navbar-nav navbar-right mobileNav pull-right">
                        <li class="dropdown">
                                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
                                <ul class="dropdown-menu" role="menu">
                                        <li><a href="#">Action</a></li>
                                        <li><a href="#">Another action</a></li>
                                        <li><a href="#">Something else here</a></li>
                                        <li class="divider"></li>
                                        <li><a href="#">Separated link</a></li>
                                        <li class="divider"></li>
                                        <li><a href="#">One more separated link</a></li>
                                </ul>
                        </li>
                </ul>

        </div>
        <!-- /.container-fluid -->
</nav>

CSS:

.mobileNav {
    position: absolute;
    right: 20px;
    top: 0px;
}
@media only screen and (max-width: 768px) {
    .mobileNav {
        position: absolute;
        right: 80px !important;
        top: 0px;
        width: 195px;
    text-align: right;
    }
    .navbar-nav .open .dropdown-menu {
        text-align: right;
        border: 1px solid #efefef;
    margin-top: 2px;
    }
    .navbar-default .navbar-nav>.open>a, 
    .navbar-default .navbar-nav>.open>a:hover, 
    .navbar-default .navbar-nav>.open>a:active,
    .navbar-default .navbar-nav>.open>a:focus {
        background:none;
    }
}