我正在尝试覆盖引导程序4以创建Moodle主题。
我正在使用此序列加载scss -首先我加载pre.scss -然后核心scss -还有post.scss
我进行了一些测试,以了解如何通过自定义更改boost主题。
在post.scss中,添加以下行:
h1 {
color: $orange;
}
那行得通。
在pre.scss中,我通过添加以下行来更改主题颜色:
$green: #a8df55 ;
$primary: $green;
这同样适用。
但是,如果我想走得更远,并通过在pre.scss中添加链接颜色来更改链接颜色:
$link-color: theme-color("primary");
或
$link-hover-color: darken($link-color, 15%);
我所有的自定义(在事前或事后定义)都丢失了,我不知道为什么。
你能解释一下为什么吗? 谢谢
编辑:也许是因为未声明这些变量?如果我将它们放在post.scss中,则会应用修改。 因此,我想我必须先将它们导入pre.scss中。我可以理解,对于$ link-color(我必须先导入它们是合乎逻辑的)。
但是$ theme-color呢? 这是我放在pre.scss中的代码,这里定义了$ theme-color,但是我所有的自定义设置都被放弃了。
$theme-colors: () !default;
// stylelint-disable-next-line scss/dollar-variable-default
$theme-colors: map-merge(
(
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark
),
$theme-colors
);