Как изменить цвет фона активного навигатора - PullRequest
1 голос
/ 28 мая 2020

Я использую bootstrap вкладок навигации на своей странице, я хочу изменить цвет фона и цвет текста активной вкладки. Далее следует код 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 голосов
/ 28 мая 2020

Вы можете сделать это с помощью 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 здесь: Ссылка

0 голосов
/ 28 мая 2020

Теперь он работает, на самом деле я перезаписываю стиль по умолчанию своим собственным стилем, добавляя следующие css

<style>
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
        color: #F0F8FF;
        background-color: #CD0B0B;
    }
</style>
0 голосов
/ 28 мая 2020

Все просто, добавьте класс по реферальной ссылке на странице

.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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...