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

How to access a theme color in bootstrap 5?

我想定义我自己的主题颜色,这样标准的 bootstrap 元素就会被覆盖,并且稍后还将该值用于我自己的组件。这是我在 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;
}

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

"How to access a theme color in bootstrap 5?"

简答,使用map-get...

.fa-li {
    color: map-get($theme-colors,"primary")
}

Demo


"I want to define my own theme color so the standard bootstrap elements are overridden and also use the value later for my own components"

完整答案,为了您的主题更改,最好重新定义$primary的值。那么您就不必使用 map-get。简单参考$primary...

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

@import "bootstrap";

.fa-li {
    color: $primary
}

Demo


另见:Overriding Bootstrap SCSS Variables