如何让我的Bootstrap导航栏背景颜色跨越整个页面宽度?

3

我在这里有一个示例,显示了一个导航栏。导航栏跨越了页面的大部分但不是全部。我想要背景颜色跨越整个页面的宽度(不是链接,只是背景颜色),所以在背景颜色上使用width:100%,但是我尝试在css中menupartial width 100%并不起作用。这是我的示例

body {
  padding-top: 51px;
  /*padding-bottom: 20px;*/
}
/* Set padding to keep content from hitting the edges */

.front-page-body-content {
  padding-left: 15px;
  padding-right: 15px;
}
/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/

.dl-horizontal dt {
  white-space: normal;
}
/* Set width on the form input elements since they're 100% wide by default */

input,
select,
textarea {
  max-width: 280px;
}
.navbar-inline {
  display: inline-flex;
}
#navbarSearchQuery {
  float: left;
  margin-top: 8px;
  margin-left: 15px;
  min-width: 280px;
}
@@media only screen and (max-width:768px) {
  #navbarSearchQuery {
    min-width: 240px;
  }
}
#searchQuery {
  /*float: left;*/
  margin-top: 10px;
  /*margin-left: 15px;*/
  min-width: 280px;
}
a.navbar-brand {
  padding-top: 10px;
  padding-bottom: 10px;
}
form#queryWithin {
  max-height: 50px;
}
#ClassDate {
  cursor: default;
}
.menupartial {
  background-color: #16749F;
  opacity: .9;
  width: 100%;
}
.menupartial a {
  color: lightgrey;
  font-weight: bold;
}
.nav-pills > li > a {
  border-radius: 0;
}
.nav-pills > li > a:hover {
  border-radius: 0;
  background-color: #16749F;
  color: white;
}
.nav-pills > li > a:active {
  border-bottom: 5px solid white;
}
<body>
  <div class="container body-content">
    <div class="row menupartial">
      <div class="col-md-12">
        <ul class="nav nav-pills">

          <li><a href="#">Your Schedules</a>
          </li>
          <li><a href="#">Your Messages</a>
          </li>
          <li><a href="#">Your Groups</a>
          </li>
          <li><a href="#">Your Friends</a>
          </li>
        </ul>
      </div>
    </div>
  </Div>
</body>

3个回答

0

container更改为container-fluid,然后将menupartial移动到您的column中。您可以从menupartial规则中删除100%。请参见示例。

body {
  padding-top: 51px;
  /*padding-bottom: 20px;*/
}
/* Set padding to keep content from hitting the edges */

.front-page-body-content {
  padding-left: 15px;
  padding-right: 15px;
}
/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/

.dl-horizontal dt {
  white-space: normal;
}
/* Set width on the form input elements since they're 100% wide by default */

input,
select,
textarea {
  max-width: 280px;
}
.navbar-inline {
  display: inline-flex;
}
#navbarSearchQuery {
  float: left;
  margin-top: 8px;
  margin-left: 15px;
  min-width: 280px;
}
@media only screen and (max-width: 768px) {
  #navbarSearchQuery {
    min-width: 240px;
  }
}
#searchQuery {
  /*float: left;*/
  margin-top: 10px;
  /*margin-left: 15px;*/
  min-width: 280px;
}
a.navbar-brand {
  padding-top: 10px;
  padding-bottom: 10px;
}
form#queryWithin {
  max-height: 50px;
}
#ClassDate {
  cursor: default;
}
.body-content .menupartial {
  background-color: #16749F;
  opacity: 0.9;
}
.body-content .menupartial a {
  color: lightgrey;
  font-weight: bold;
}
.nav.nav-pills > li > a {
  border-radius: 0;
}
.nav.nav-pills > li > a:hover {
  border-radius: 0;
  background-color: #16749F;
  color: white;
}
.nav.nav-pills > li > a:active {
  border-bottom: 5px solid white;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" />

<body>
  <div class="container-fluid body-content">
    <div class="row">
      <div class="col-md-12 menupartial">
        <ul class="nav nav-pills">
          <li><a href="#">Your Schedules</a>

          </li>
          <li><a href="#">Your Messages</a>

          </li>
          <li><a href="#">Your Groups</a>

          </li>
          <li><a href="#">Your Friends</a>

          </li>
        </ul>
      </div>
    </div>
  </Div>
</body>


0

container 更改为 container-fluid 并将 menupartial 移动到该 div 中,如下所示:

<div class="container-fluid menupartial">

container-fluid 是默认的 Bootstrap 类,可将容器跨越至全宽。

这里有一个带有上述类的 jsFiddle: http://jsfiddle.net/AndrewL32/65sf2f66/49/


从Bootstrap 3开始,流体布局是默认行为,不需要显式声明container-fluid,而是可以使用<div class="menupartial">代替<div class="container-fluid menupartial"> - Ronnie

0
将正文的左/右边距设置为0:
body {
  padding-top: 51px;
  /*padding-bottom: 20px;*/
  margin-left: 0;
  margin-right: 0;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接