【发布时间】:2019-05-29 06:22:46
【问题描述】:
我正在为我的项目使用 bootstrap 4 框架。
我通过覆盖核心变量来进行主题化。如果我调整我的网格变量,它们会起作用,但如果我尝试更新 $border-radius-lg 变量,则不会发生任何变化,并且仍在使用默认的 $border-radius-lg 大小。
这是放置自定义变量的地方...
@import "scss/functions";
@import "scss/variables";
// my custom variables
@import "myvars";
@import "scss/mixins";
@import "scss/root";
@import "scss/reboot";
@import "scss/type";
@import "scss/images";
@import "scss/code";
@import "scss/grid";
@import "scss/tables";
@import "scss/forms";
@import "scss/buttons";
@import "scss/transitions";
@import "scss/dropdown";
@import "scss/button-group";
@import "scss/input-group";
@import "scss/custom-forms";
@import "scss/nav";
@import "scss/navbar";
@import "scss/card";
@import "scss/breadcrumb";
@import "scss/pagination";
@import "scss/badge";
@import "scss/jumbotron";
@import "scss/alert";
@import "scss/progress";
@import "scss/media";
@import "scss/list-group";
@import "scss/close";
@import "scss/toasts";
@import "scss/modal";
@import "scss/tooltip";
@import "scss/popover";
@import "scss/carousel";
@import "scss/spinners";
@import "scss/utilities";
@import "scss/print";
这些是我在myvars 文件中的自定义变量
/* my custom bootstrap 4 vars
-------------------------------------------------- */
// these work fine when I make changes to test
$grid-columns: 12;
$grid-gutter-width: 30px;
// this doesn't change any of my large input radius
$border-radius-lg: 1rem;
我检查了引导程序 variables 文件,$border-radius-lg 是 $input-border-radius-lg 的父变量,但我的 css 编译后半径仍然是默认大小 .3rem
有谁知道如何让这个工作?
这是默认变量的屏幕截图...
【问题讨论】:
-
如果我没记错的话,在 sass 覆盖一个变量,默认必须有
!default标志 -
$grid-columns默认为12 !default,但您不需要声明!default来覆盖var。我目前可以在不使用!default的情况下更改$grid-columns。我已经尝试!default到我的自定义$border-radius-lg并且仍然没有改变。没有意义。 -
不,我的意思是引导变量必须有
!default被覆盖,最后它不会被改变 -
$border-radius-lgin bootstraps variables.scss 设置为!default那么为什么我可以覆盖它们?
标签: sass bootstrap-4