twitter-bootstrap - Bootstrap 4折叠导航栏背景颜色

标签 twitter-bootstrap

我想更改 中折叠导航栏的背景颜色 Bootstrap 4 alpha v6 .当然我想改变的背景颜色整个导航栏 .

所以问题是负责导航栏崩溃的任何类?到目前为止,我发现的唯一 div 是 #navbarSupportedContent但它只是导航栏中 ul 的内容(因此它不会改变整个导航栏的颜色)。如果导航栏折叠然后更改背景颜色,我可以检查 jquery,但我想知道我是否可以简单地在 css 中做到这一点。

除此之外,我想说导航栏默认颜色是透明的,这就是为什么我想在它折叠时更改它的颜色。

我还有下一个问题,负责 BS4 中导航栏切换器图标的类是什么?我问是因为我想更改图标的颜色。我已经找到并尝试了以下内容:

.navbar-toggler-icon {
  color:white !important;
}

最佳答案

Bootstrap v5 更新
这是一个 Bootstrap 5 CSS 演练,涵盖了 .navbar 的修改本身,内部链接和汉堡按钮(全部避免 !important 应该仅用作最后的覆盖手段):

/* change navbar background */
nav.navbar {
  background: transparent;
}

/* change navbar-brand color */
.navbar a.navbar-brand {
  color: white;
}

/* change navbar-brand color on hover */
.navbar a.navbar-brand:hover {
  color: green;
}

/*  change navbar li colors, also active one but not disabled one */
.navbar ul.navbar-nav li.nav-item a.nav-link {
  color: white;
}

/* change navbar-toggler inside lines color (stroke) */
.navbar-light span.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='yellow' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  color: white;
}

/* change hamburger button border color */
.navbar-light button.navbar-toggler {
  border-color: yellow;
}

/* change navbar background on collapse */
@media (max-width: 768px) {
  nav.navbar {
    background: lightgray;
  }
}
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>

<nav class="navbar navbar-expand-lg navbar-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">Navbar</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
      <ul class="navbar-nav me-auto mb-2 mb-lg-0">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Link</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled">Disabled</a>
        </li>
      </ul>
      <form class="d-flex">
        <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
        <button class="btn btn-outline-success" type="submit">Search</button>
      </form>
    </div>
  </div>
</nav>


v4原始答案。

/* change navbar background */
nav.navbar {
  background: transparent;
}
/* change navbar-brand color */
.navbar a.navbar-brand {
  color: white;
}
/* change navbar-brand color on hover */
.navbar a.navbar-brand:hover {
  color: green;
}
/*  change navbar li colors, also active one but not disabled one */
.navbar ul.navbar-nav li.nav-item a.nav-link {
  color: white;
}
/* change navbar-toggler inside lines color (stroke) */
.navbar-light span.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='yellow' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  color: white;
}
/* change hamburger button border color */
button.navbar-toggler.navbar-toggler-right {
  border-color: yellow;
}
/* change navbar background on collapse */
@media (max-width: 768px) {
  nav.navbar {
    background: lightgray;
  }
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.3.7/js/tether.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
<nav class="navbar navbar-toggleable-md navbar-light">
  <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <a class="navbar-brand" href="#">Navbar</a>
  <div class="collapse navbar-collapse" id="navbarTogglerDemo02">
    <ul class="navbar-nav mr-auto mt-2 mt-md-0">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item">
        <a class="nav-link disabled" href="#">Disabled</a>
      </li>
    </ul>
    <form class="form-inline my-2 my-lg-0">
      <input class="form-control mr-sm-2" type="text" placeholder="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </div>
</nav>

关于twitter-bootstrap - Bootstrap 4折叠导航栏背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41896043/

相关文章:

javascript - 未捕获的类型错误 : data[option] is not a function bootstrap. js:1215

twitter-bootstrap - 初始化后设置选项时,datetimepicker 中的 disabledTimeIntervals 不起作用

html - Firefox 转换 -> 翻译

php - bootstrap/Wordpress 中每行 3 个元素

用于循环显示图标的 JavaScript 代码

angularjs - 处理放置在选项卡内的 Bootstrap Accordion 的展开事件

html - 当列堆叠时,Bootstrap CSS 垂直间距消失

html - 如何使用本地视频而不是 Youtube URL?

html - 低分辨率下的 Twitter Bootstrap 轮播截止

jquery - 如何在Bootstrap中使用AJAX发送表单数据?