如何在 Bootstrap 5 中访问主题颜色?

Mar*_*S82 4 sass bootstrap-themes bootstrap-5

我想定义我自己的主题颜色,以便覆盖标准引导元素,并稍后将该值用于我自己的组件。这是我在 scss 文件中使用的代码:

$theme-colors: (
    "primary": #611fe6,
    "secondary": #ffbd58,
    "dark": #000000
);

@import "node_modules/bootstrap/scss/bootstrap";
@import "node_modules/bootstrap/scss/functions";
@import "node_modules/bootstrap/scss/variables";
@import "node_modules/bootstrap/scss/mixins";


.fa-li {
    color: $primary;
}
Run Code Online (Sandbox Code Playgroud)

.fa-li 然后具有 bootstrap 的原始原色,而不是我自己的。

Zim*_*Zim 7

“如何在 Bootstrap 5 中访问主题颜色?”

简短的回答,使用map-get...

.fa-li {
    color: map-get($theme-colors,"primary")
}
Run Code Online (Sandbox Code Playgroud)

演示


“我想定义自己的主题颜色,以便覆盖标准引导元素,并在以后为我自己的组件使用该值”

完整答案,对于你的主题变化最好重新定义值$primary。那么你就不必使用map-get. 简单参考一下$primary...

$primary: #611fe6;
$secondary: #ffbd58;
$dark: #000000;

@import "bootstrap";

.fa-li {
    color: $primary
}
Run Code Online (Sandbox Code Playgroud)

演示


另请参阅:覆盖 Bootstrap SCSS 变量