我试图覆盖bootstrap4样式。我没有使用Sass的经验,但这看起来像是引导SCSS文件中的错误。
我的自定义文件是:
/* custom.scss */
/* -------begin customization-------- */
$body-bg: #000;
$body-color: #111;
/* -------end customization-------- */
/* import the necessary Bootstrap files */
@import "/bootstrap-4.0.0/scss/_variables.scss";
我使用的是bootstrap 4.4.1,但只能找到4.0.0的scss文件。
开启
sass /custom.scss /custom.css
我得到:
$color: theme-color("primary") is not a color.
╷
152 │ $link-hover-color: darken($link-color, 15%) !default;
│ ^^^^^^^^^^^^^^^^^^^^^^^^
╵
/bootstrap-4.0.0/scss/_variables.scss 152:29 @import
/custom.scss 8:9 root stylesheet
目标custom.css文件包含:
> /* Error: $color: theme-color("primary") is not a color. * , *
> 152 | $link-hover-color: darken($link-color, 15%) !default;
> * | ^^^^^^^^^^^^^^^^^^^^^^^^ * ' * /scss/_variables.scss 152:29 @import * custom.scss 8:9 root stylesheet */
>
> body::before { font-family: "Source Code Pro", "SF Mono", Monaco,
> Inconsolata, "Fira Mono",
> "Droid Sans Mono", monospace, monospace; white-space: pre; display: block; padding: 1em; margin-bottom: 1em; border-bottom:
> 2px solid black; content: 'Error: $color: theme-color("primary") is
> not a color.\a \2577 \a 152 \2502 $link-hover-color:
> darken($link-color, 15%) !default;\a \2502
> ^^^^^^^^^^^^^^^^^^^^^^^^\a \2575 \a /scss/_variables.scss 152:29
> @import\a \/custom.scss 8:9 root stylesheet'; }
有什么见解吗?
3条答案
按热度按时间czfnxgou1#
问题出在导入文件的顺序上。请尝试这种方法,看看是否有效
1.首先导入引导函数和变量
1.导入已覆盖引导主题颜色和其他引导变量的自定义变量文件。
1.最后, Bootstrap 主要scss:因此,新的主题变量将基于您的主题变量创建(第2步),并应用于整个应用程序
e5nszbig2#
theme-color
是 Bootstrap 的内部函数:在导入变量之前导入引导函数,类似于:
am46iovg3#
变量导入必须在引导函数导入之后进行。