如何更改活动导航项的背景颜色

时间:2020-05-28 10:24:51

标签: html css

我在页面中使用了引导程序导航选项卡,我想更改活动选项卡的背景颜色和文本颜色。以下是这些选项卡的HTML代码

<div class="tab-content">
            <div class="os-tabs-controls">
                <ul class="nav nav-pills text-upper pl-2 pr-2">
                    <li class="nav-item tabs p-2">
                        <a class="nav-link" data-toggle="tab" href="#leavelist" aria-expanded="true">
                            LeaveList
                        </a>
                    </li>
                    <li class="nav-item tabs p-2">
                        <a class="nav-link" data-toggle="tab" href="#procurementlist" aria-expanded="false">
                            Procurement List
                        </a>
                    </li>
                </ul>
            </div>
        </div>

我的CSS如下

<Style>
.nav-item a:active{
        color: white;
        background-color: red;
    }
</Style>

当我单击选项卡时,上面的代码工作正常,但立即将其更改回默认的颜色样式。 敬请任何人调查该问题,并帮助我使其正常工作。

3 个答案:

答案 0 :(得分:0)

很简单,在页面的引荐链接上添加类

.active{
        color: white;
        background-color: red;
    }
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"><script
  src="https://code.jquery.com/jquery-3.5.1.js"
  integrity="sha256-QWo7LDvxbWT2tbbQ97B53yJnYU3WhH/C8ycbRAkjPDc="
  crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<div class="tab-content">
            <div class="os-tabs-controls">
                <ul class="nav nav-pills text-upper pl-2 pr-2">
                    <li class="nav-item tabs p-2">
                        <a class="nav-link" data-toggle="tab" href="#leavelist" aria-expanded="true">
                            LeaveList
                        </a>
                    </li>
                    <li class="nav-item tabs p-2">
                        <a class="nav-link active" data-toggle="tab" href="#procurementlist" aria-expanded="false">
                            Procurement List
                        </a>
                    </li>
                </ul>
            </div>
        </div>

如果您希望对悬停效果相同,可以将其简单地添加到nav-link类中。


对于一页网站:

$('body').scrollspy({
  target: '#myNavbar',
  offset: 50
});
.navbar-nav li>a:hover,.navbar-nav li>a:focus,.navbar-nav li.active {
        color: white;
        background-color: red;
    }
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"><script
  src="https://code.jquery.com/jquery-3.5.1.js"
  integrity="sha256-QWo7LDvxbWT2tbbQ97B53yJnYU3WhH/C8ycbRAkjPDc="
  crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<div class="tab-content">
            <div class="os-tabs-controls">
                <ul class="nav nav-pills text-upper pl-2 pr-2">
                    <li class="nav-item tabs p-2">
                        <a class="nav-link" data-toggle="tab" href="#leavelist" aria-expanded="true">
                            LeaveList
                        </a>
                    </li>
                    <li class="nav-item tabs p-2">
                        <a class="nav-link" data-toggle="tab" href="#procurementlist" aria-expanded="false">
                            Procurement List
                        </a>
                    </li>
                </ul>
            </div>
        </div>
        
        
<div id="leavelist">Section One</div>
 <div id="procurementlist">Section Two</div>

答案 1 :(得分:0)

您可以使用jQuery:

$('.nav-item a').click(function(e) {
$('.nav-item a').removeClass('current_page_item');
$(this).addClass('current_page_item');
});

CSS:

.current_page_item {
  background-color: red;
  color: white;
}

JSFiddle在这里:Link

答案 2 :(得分:0)

它现在可以正常工作,实际上我用自定义样式覆盖了默认样式 通过添加以下CSS

<style>
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
        color: #F0F8FF;
        background-color: #CD0B0B;
    }
</style>