为什么我们不能使用CSS改变Bootstrap 4中徽章类的颜色?

问题描述 投票:0回答:3

Bootstrap v4.3.1 中徽章的类是

.badge {
   display: inline-block;
   padding: 0.25em 0.4em;
   font-size: 75%;
   font-weight: 700;
   line-height: 1;
   text-align: center;
   white-space: nowrap;
   vertical-align: baseline;
   border-radius: 0.25rem;
   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, 
   border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

要更改其颜色,我们可以添加以下类

.badge-success {
   color: #fff;
   background-color: #28a745;
}

逻辑会说,如果我想制作自己的颜色,我可以在我的 css 文件中创建一个新类,就像这样

.badge-mine {
   color: #212529;
   background-color: #808080;
}

当它起作用时它应该起作用......

<span class="badge badge-success">test</span>

那么这也应该有效,但它不起作用,即使它们看起来相同。

<span class="badge badge-mine">test</span>

我检查了很多答案,但似乎没有人回答为什么我们不能这样做。虽然,我不是 CSS 专家,但我知道最后一个命令会覆盖前一个命令,即这应该覆盖

color: #212529;
background-color: #808080;

这个

color: #fff;
background-color: #28a745;

但由于某种原因,这里没有发生。

一些 Bootstrap 4 专家能否解释一下为什么徽章矿井不起作用,尽管它看起来几乎与徽章成功一模一样?

谢谢

css bootstrap-4
3个回答
3
投票

它应该按您的预期工作。但如果你的两个徽章

<span class="badge badge-success">test</span>
<span class="badge badge-mine">test</span>

看起来相同,问题出在其他地方,如果您的徽章没有作为类,则它不能具有相同样式的 .badge-success 。 无论如何,CSS 类优先级主要取决于它们的具体程度。 例如

.badge.badge-success {
   background-color: red;
} 

覆盖

.badge-success {
   background-color: green
}

您可以通过添加 !important 到 css 参数来覆盖此行为,例如

background-color: red!important;

1
投票

嗯,它似乎确实按预期工作:

.badge-mine {
   color: #212529;
   background-color: #808080;
}

.badge-mine-2 {
   color: #ff3300;
   background-color: #0022ff;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet"/>
<span class="badge badge-mine">test</span>
<span class="badge badge-mine-2">test</span>


0
投票

您可以用这个自定义引导徽章颜色...

.red {
  background-color: red;
}
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous"/>

<p class="badge red">test</p>

© www.soinside.com 2019 - 2024. All rights reserved.