Ruby on rails 重写CoreUI变量
这里有一个gem,它使用CoreUI,这是一个引导管理模板 现在,模板覆盖了引导颜色,我想再次将它们覆盖为我的颜色(特别是Ruby on rails 重写CoreUI变量,ruby-on-rails,sass,bootstrap-4,core-ui,Ruby On Rails,Sass,Bootstrap 4,Core Ui,这里有一个gem,它使用CoreUI,这是一个引导管理模板 现在,模板覆盖了引导颜色,我想再次将它们覆盖为我的颜色(特别是-primary),这样当我使用例如btn primary类时,按钮将具有我的颜色。我试过了,但没用 _core-variables.scss文件 $blue: #2482dc; $colors: ( "blue": $blue ); $theme-colors: ( "primary": $blue ) @import "coreui-free"
-primary
),这样当我使用例如btn primary
类时,按钮将具有我的颜色。我试过了,但没用
_core-variables.scss文件
$blue: #2482dc;
$colors: (
"blue": $blue
);
$theme-colors: (
"primary": $blue
)
@import "coreui-free";
@import "core-variables";
application.scss文件
$blue: #2482dc;
$colors: (
"blue": $blue
);
$theme-colors: (
"primary": $blue
)
@import "coreui-free";
@import "core-variables";
更新
我尝试了Bootstrap或CoreUI中的@include
函数,在这两种情况下,尽管已导入CoreUI rails gem,但它们都未定义:
另一次更新
经过更多的研究和尝试,我发现我只能使用以下代码覆盖.btn primary
:
.btn-primary {
@include button-variant(theme-color("primary"), theme-color("primary"));
}
这很好,但它违背了主题颜色的全部目的。通过此链接
bootstrap承诺:
“Bootstrap的许多组件和实用程序都是通过迭代Sass映射的@循环构建的。这对于通过$theme colors
生成组件的变体以及为每个断点创建响应变体特别有用。当您自定义这些Sass映射并重新编译时,您将自动看到这些循环中反映的更改。”
是我做错了还是gem有问题?我不是Ruby开发人员,我只是想让前端部分正常工作
任何帮助都将不胜感激。我认为您遇到了css专用性问题。我会尝试将@import“核心变量”
放在第一位,如果这不起作用,您可以始终在变量之后添加!important
,以确保它们的专用性优先。哈利路亚
因此,事实证明,问题确实出在这块宝石上
我发现\u core-variables
需要在coreui-free
文件之前导入。因此我将application.scs更改为:
@import "core-variables";
@import "coreui-free";
但它仍然不起作用,所以我检查了这个coreifree
文件的作用。它看起来像这样:
@import "flag-icon/flag-icon";
@import "font-awesome-sprockets";
@import "font-awesome";
@import "simple-line-icons/simple-line-icons";
@import "bootstrap-variables";
@import "bootstrap";
@import "coreui/core";
事实证明,bootstrap变量
实际上每次都覆盖了我的核心变量。我需要更改导入顺序:
@import "bootstrap-variables";
@import "_core-variables";
@import "flag-icon/flag-icon";
@import "font-awesome-sprockets";
@import "font-awesome";
@import "simple-line-icons/simple-line-icons";
@import "bootstrap";
@import "coreui/core";
现在覆盖primary
颜色就这么简单:
$theme-colors: (
primary: #2482dc
);
谢谢,但恐怕不是这样。我更新了问题