我正在使用 Bootstrap 4
和 Sass (scss
) 创建一个网站。我遇到的问题是我的导航链接是灰色的,而不是我想要的蓝色。
我能找到的所有关于这个主题的话题都建议覆盖导航项的样式。但在我看来,当你以后进行开发时,这样做可能会给你带来麻烦。因此,覆盖变量而不是样式更符合我的喜好,但某种程度上它对我来说却没起作用。
我已经通过推荐的方式覆盖了Bootstrap的样式:
- 创建包含颜色覆盖的scss文件
- 通过
$theme-colors
函数更改样式 - 在
bootstrap.scss
文件之前导入主题文件。
我的 _theme.scss
如下所示:
@import "~bootstrap/scss/functions";
@import "~bootstrap/scss/variables";
$blue: #0053CB;
$blue-700: #0F2C92;
$white: #FFFFFF;
$green: #39CA71;
$red: #F1453D;
$orange: #fd7e14;
$yellow: #FDC02F;
$gray-100: rgba(0,0,0,.03);
$theme-colors: (
primary: $blue,
secondary: $white,
light: $white,
dark: $blue-700,
success: $green,
warning: $orange,
danger: $red,
);
// Import bootstrap as last so that the variables will be overridden
@import '~bootstrap/scss/bootstrap';
$link-hover-color
的 Bootstrap 代码(用于导航链接)如下:
$link-color: theme-color("primary") !default;
$link-hover-color: darken($link-color, 15%) !default;
问题在于,我定义的主题颜色在使用bg-primary
等html代码时被正确使用,但是悬停和链接颜色不是我期望的蓝色,而是灰色,就像默认值一样。我设置有什么问题或者我做错了什么吗?
sass
变量$dropdown-*
. - kanlukasz