我在页面中使用了引导程序导航选项卡,我想更改活动选项卡的背景颜色和文本颜色。以下是这些选项卡的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>
当我单击选项卡时,上面的代码工作正常,但立即将其更改回默认的颜色样式。 敬请任何人调查该问题,并帮助我使其正常工作。
答案 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>