【问题标题】:Responsive menu align right Bootstrap响应式菜单右对齐 Bootstrap
【发布时间】:2016-10-07 05:07:43
【问题描述】:

我正在为自己创建一个网站,但我无法使用引导网格来使菜单在移动屏幕上响应。

全屏图片:Full screen - menu bar

我设法编写了菜单的响应式设计。但是,在重新缩放时,菜单项似乎存在问题。他们只是不会在菜单下对齐。 (最好我希望他们将鼠标悬停在下面的图像上,而不是将其全部向下推)。

手机屏幕图片:Menu items not aligned with collapsed menu.

提前感谢所有帮助。如果我违反任何规则,请指出我正确的方向。

亲切的问候,汤姆

/* Lay-out: Header*/

.header-row {
  display: flex;
  align-items: center;
}
.nav-no-mar-pad {
  margin: 0;
  padding: 0;
}
.navbar-toggle {
  border: #022F40 solid 1px;
  margin: 8px 4px 8px 45px;
  text-align: right;
}
.icon-bar {
  border: #022F40 solid 1px;
}
.navbar-nav li a {
  margin-right: 0;
  text-align: center;
  width: 90px;
  padding: 10px 10px;
}
/* --- End --- */
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<div class="header">

  <div class="container-fluid background-white">
    <div class="row  header-row">

      <div class="col-lg-5">
        <img id="header-logo" class="img-responsive" src="http://placehold.it/325x75">
      </div>

      <div class="col-xs-6 col-md-offset-1" style="padding-right: 0">
        <nav class="navbar navbar-right nav-no-mar-pad">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
          </div>
          <div id="navbar" id="bs-example-navbar-collapse-1" class="collapse navbar-collapse">
            <ul class="nav navbar-nav navbar-right">
              <li><a href="#">About me</a>
              </li>
              <li><a href="#">Contact</a>
              </li>
            </ul>
          </div>
        </nav>
      </div>

    </div>
  </div>

</div>

【问题讨论】:

    标签: html css twitter-bootstrap


    【解决方案1】:

    由于您不介意菜单是否浮动在页面上的其他元素之上,因此实现此目的的一种简单方法是使用绝对定位。您可以轻松地将元素推到屏幕的右侧,并使用此方法将它们对齐。添加如下内容:

    @media only screen and (max-width: 768px) {
        #navbar {
            position:absolute;
            right:0;
        }
        .navbar.navbar-right.nav-no-mar-pad {
            position:absolute;
            right: 0;
        }
        .header-row {
            align-items:inherit;
        }
    }
    

    这应该为您提供所需的样式,并且仅在较小的屏幕尺寸上提供给您。如果你想看,我这里有一个工作版本:

    http://codepen.io/egerrard/pen/xEYOzy

    【讨论】:

      猜你喜欢
      • 2019-06-20
      • 2016-01-10
      • 1970-01-01
      • 1970-01-01
      • 2017-04-30
      • 1970-01-01
      • 2018-05-11
      • 2020-06-24
      • 2012-09-09
      相关资源
      最近更新 更多