使用bootstrap-vue导航栏项下拉菜单更改文本颜色

时间:2018-10-11 23:06:50

标签: html css vue.js vuejs2 bootstrap-vue

我正在使用Bootstrap-Vue来编写网页,但是我无法更改Bootstrap navbar,尤其是b-nav-item-dropdown标签上的文本颜色。我尝试使用<span class="text-dark"来包裹b-nav-item-dropdown标记,但这没有用。看来b-navbar的变体只能将文本颜色变体设置为深色或浅色。

这是我的代码:

<div>
  <b-navbar toggleable="md" type="dark" variant="primary">
  <b-navbar-toggle target="nav_collapse"></b-navbar-toggle>
  <b-collapse is-nav id="nav_collapse">
    <b-navbar-nav class="pl-5" inline>

      <b-nav-item-dropdown text="Electronics">
        <b-dropdown-item href="/">Item 1</b-dropdown-item>
        <b-dropdown-item href="/">Item 2</b-dropdown-item>
        <b-dropdown-item href="/">Item 3</b-dropdown-item>
        <b-dropdown-item href="/">Item 4</b-dropdown-item>
      </b-nav-item-dropdown>


      <b-nav-item-dropdown text="Sports">
        <b-dropdown-item href="/">Item 1</b-dropdown-item>
        <b-dropdown-item href="/">Item 2</b-dropdown-item>
        <b-dropdown-item href="/">Item 3</b-dropdown-item>
        <b-dropdown-item href="/">Item 4</b-dropdown-item>
      </b-nav-item-dropdown>

    </b-navbar-nav>
    <!--Login button-->
    <b-navbar-nav class="ml-auto pr-5">
      <b-button size="me">Login</b-button>
    </b-navbar-nav>

  </b-collapse>
</b-navbar>
</div>

我的目标是将b-nav-item-dropdown中的所有文本更改为黑色,而不是灰色。

感谢阅读。

2 个答案:

答案 0 :(得分:2)

不要尝试用额外的元素和类包装组件,只需检查DOM并将规则应用于该元素并将其更改为自定义元素即可。我遵循了该过程,并且将color应用于b-nav-item-dropdown,而#ffffff80应用于此选择器.navbar-dark .navbar-nav .nav-link,因此我们将其颜色更改为black按照:

  <template>...</template>
  <style>
   .navbar-dark .navbar-nav .nav-link{
      color:black!important
    }
 </style>

答案 1 :(得分:2)

toggle-class道具中通过您的附加课程。例如:

<b-nav-item-dropdown toggle-class="text-dark" text="Electronics">

有关该组件支持的更多道具,请参见https://bootstrap-vue.js.org/docs/components/nav#dropdown-support