Как изменить цвет фона ячейки таблицы при использовании классов CSS Bootstrap?

#css #twitter-bootstrap #html-table #bootstrap-5

#css #twitter-bootstrap #html-таблица #bootstrap-5

Вопрос:

Я использую Bootstrap 5.0 CSS и пытаюсь создать таблицу с пользовательскими цветами ячеек, используя некоторые из моих собственных CSS. color Свойство работает нормально, но когда я пытаюсь изменить цвет фона с помощью background свойства, Bootstrap игнорирует правило. Кто-нибудь знает, как это исправить?

Мой код:

 td.colorfy {
    background: blue;
    color: white;
  } 
 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet"/>

<table class="table table-bordered">
  <tr>
    <td class="colorfy">cell</td>
    <td>cell</td>
    <td>cell</td>
  </tr>
</table> 

Комментарии:

1. Я предлагаю прочитать документацию для таблиц , поскольку там есть информация о том, как вычисляются цвета фона. Возможно, вы захотите использовать один из классов Bootstrap для внесения изменений.

Ответ №1:

Просто используйте !importent директиву, чтобы переопределить любое другое поведение, установленное bootstrap. Посмотрите здесь для получения дополнительной информации.

 td.colorfy {
    background: blue !important;
    color: white;
  } 
 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet"/>

<table class="table table-bordered">
  <tr>
    <td class="colorfy">cell</td>
    <td>cell</td>
    <td>cell</td>
  </tr>
</table> 

Или быть более конкретным при настройке вашего правила css:

 .table td.colorfy {
    background: blue;
    color: white;
  } 
 <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet"/>

<table class="table table-bordered">
  <tr>
    <td class="colorfy">cell</td>
    <td>cell</td>
    <td>cell</td>
  </tr>
</table> 

Как и в bootstrap css, цвет задается как:

 .table>:not(caption)>*>* {
    padding: .5rem .5rem;
    background-color: var(--bs-table-bg);
    border-bottom-width: 1px;
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg)
}
 

и это более конкретно, чем ваше определение, оно выигрывает. Более конкретно, используя bootstrap или using !important , вы можете добиться нового цвета фона.

Комментарии:

1. Обратите внимание, что говорится на этом сайте: «все последующие определения для этого свойства будут игнорироваться». Так что, если вы позже захотите изменить, скажем, фоновое изображение для строки, !important в этом ответе это переопределит.

2. В моем реальном коде много правил, и я бы предпочел не добавлять !important их ко всем вручную.

3. затем используйте более конкретное определение, которое я только что добавил