Стиль только одна вкладка в Bootstrap Nav Tab - PullRequest
0 голосов
/ 06 ноября 2018

Я создал навигационную вкладку, используя Bootstrap 3, и хочу оформить только одну вкладку. Не активная вкладка или неактивная вкладка; У меня есть одна вкладка, к которой я применил класс "csv-download". Я хочу обновить эту вкладку, чтобы убрать границу и сделать фон прозрачным.

Причина, по которой я это делаю, заключается в том, что я хочу, чтобы ссылка на скачивание была правильно выровнена с другими вкладками, а также отвечала требованиям для небольших экранов.

Вот настройки для моих вкладок:

<ul class="nav nav-tabs" i>
    <li class="active" role="presentation"><a data-toggle="tab" href="#link1">Tab 1</a></li>
    <li role="presentation"><a data-toggle="tab" href="#link2">Tab 2</a></li>
    <li role="presentation"><a data-toggle="tab" href="#link3">Tab 3</a></li>

    <li id="dfw_download" class="csv-download"><a target="_blank"><i class="fa fa-download"></i>  Download Data</a></li>
</ul>

Вот отдельные вещи, которые я пробовал:

.csv-download a {

    background-color: transparent;
    color: #0277bd;
    text-decoration: none;
}

И

.nav-tabs > li > .csv-download > a {
    background-color: transparent;
    color: #0277bd;
    text-decoration: none;
}

Ответы [ 2 ]

0 голосов
/ 06 ноября 2018

Так что я думаю, несколько вещей, чтобы рассмотреть здесь. Надлежащий способ справиться с этим - просто иметь более высокую специфику CSS, чем та, которую предоставляет начальная загрузка. Основная проблема, которая делает это странным, заключается в том, что вы действительно не хотите создавать стили непосредственно для элементов, если можете помочь. Bootstrap 4 решает эту проблему, когда они переносят большинство своих стилей в классы, т.е. .nav-item, так что вы можете поставить больше классов поверх.

Я бы настоятельно рекомендовал не использовать !important. Не то, чтобы это было «неправильно» - бывают случаи, когда библиотеки имеют очень высокие стили специфичности (например), и иногда имеет смысл заставлять их знать, что они предпочитают ваши стили, но если есть другие средства (которые, кажется, существуют), предпочтительнее делать это вместо этого.

Глядя на некоторые из старых примеров из Bootstrap 3 , похоже, что их примеры пытаются переопределить определенные стили, используя дочерний комбинатор (>), то есть .nav > li > a, чтобы переопределить стили.

Также стоит посмотреть, предоставил ли Bootstrap 3 способ импорта определенных стилей? Если есть способ, который вы можете импортировать только те стили, которые вам нужны, через Sass / LESS версию Bootstrap, это также может быть вариантом.

0 голосов
/ 06 ноября 2018

Для переопределения по умолчанию стиль начальной загрузки использует для их элементов:

1) Вы можете использовать предложение !important ( не рекомендуется ) в CSS.

Или

2) Создайте свой собственный класс стилей и примените их к элементу, который вы хотите стилизовать.

Проверьте следующий пример:

.csv-download a {

    background-color: red !important;
    color: black !important;
    text-decoration: none !important;
}

.custom-link > a {

    background-color: red;
    color: black;
    text-decoration: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<!-- Font Awesome -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<nav class="navbar navbar-default">
  <div class="container-fluid">
    <div class="navbar-header">
      <a class="navbar-brand" href="#">WebSiteName</a>
    </div>
    <ul class="nav navbar-nav">
      <li class="active" role="presentation">
        <a data-toggle="tab" href="#link1">Tab 1</a>
      </li>
      <li role="presentation">
        <a data-toggle="tab" href="#link2">Tab 2</a>
      </li>
      <li role="presentation">
        <a data-toggle="tab" href="#link3">Tab 3</a>
      </li>
      <li id="dfw_download" class="csv-download">
        <a target="_blank"><i class="fa fa-download"></i> Download Data</a>
      </li>
      <li id="dfw_download" class="csv-download custom-link">
        <a target="_blank"><i class="fa fa-download"></i> Download Data</a>
      </li>
    </ul>
  </div>
</nav>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...