使用 bootstrap sass,一些变量没有被覆盖
Using bootstrap sass, some variables are not being overridden
我正在开始一个新项目,我正在使用 bootstrap-sass 作为前端布局工具。
我正在尝试覆盖 bootstrap sass 中的一些变量,虽然我可以覆盖其中的一些,但其他的没有改变。
我创建了一个简单的模板来查看我更改的每个主要颜色覆盖:
<div class="well">
<ul>
<li><dropzone></dropzone></li>
<li><gallery></gallery></li>
<li><location></location></li>
<li><locations></locations></li>
<li><pp-image></pp-image></li>
<li><map></map></li>
</ul>
</div>
<div class="panel panel-primary">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-success">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-warning">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-danger">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-info">
<div class="panel-heading">
test
</div>
</div>
然后在我的 scss 入口点 main.scss
我创建了我的变量覆盖然后导入 bootstrap-sass:
$color1: #D800E5;
$color2: #010B3A;
$color3: #2300F5;
$color4: #FB0026;
$color5: #B34D30;
$color6: #FBFEFB;
$gray-base: green;
$gray-darker: lighten($gray-base, 13.5%);
$gray-dark: lighten($gray-base, 20%);
$gray: lighten($gray-base, 33.5%);
$gray-light: lighten($gray-base, 46.7%);
$gray-lighter: lighten($gray-base, 93.5%);
$brand-primary: darken($color1, 6.5%);
$brand-success: $color3;
$brand-info: orange; // i also tried using regular color assignments in case it was a variable issue. these don't work either
$brand-warning: green;
$brand-danger: yellow;
$icon-font-path: '~bootstrap-sass/assets/fonts/bootstrap/';
@import "~bootstrap-sass/assets/stylesheets/bootstrap";
body{
background-color:$color2;
color: $color2;
}
当我在浏览器中查看模板时,原色覆盖有效,但灰色覆盖和基于状态的覆盖无效:
我仍在研究文档以找出我做错了什么,但我认为对于更熟悉前端样式的人来说这可能是显而易见的。
您正在对要以绿色而不是灰色显示的元素使用 well
class。
但是井的默认颜色 is defined as:
$well-bg: #f5f5f5 !default;
$well-border: darken($well-bg, 7%) !default;
所以如果你想改变井的颜色,你应该改变$well-bg
的颜色。如果您想查看使用 $gray-base
颜色的元素,请在 this file.
中搜索 $gray
OP 编辑
请注意,您要覆盖的变量名称可在文件中找到:_bootstrap-variables.scss
。
如果您通过 npm(我在这个项目中正在做)引入 bootstrap-sass,可以在
找到该文件
node_modules/bootstrap-sass/templates/project/_bootstrap-variables.scss
您应该为成功面板覆盖此变量 $panel-success-border, $panel-success-text, $panel-success-heading-bg, $panel-success-border
,其他类似。
我正在开始一个新项目,我正在使用 bootstrap-sass 作为前端布局工具。
我正在尝试覆盖 bootstrap sass 中的一些变量,虽然我可以覆盖其中的一些,但其他的没有改变。
我创建了一个简单的模板来查看我更改的每个主要颜色覆盖:
<div class="well">
<ul>
<li><dropzone></dropzone></li>
<li><gallery></gallery></li>
<li><location></location></li>
<li><locations></locations></li>
<li><pp-image></pp-image></li>
<li><map></map></li>
</ul>
</div>
<div class="panel panel-primary">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-success">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-warning">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-danger">
<div class="panel-heading">
test
</div>
</div>
<div class="panel panel-info">
<div class="panel-heading">
test
</div>
</div>
然后在我的 scss 入口点 main.scss
我创建了我的变量覆盖然后导入 bootstrap-sass:
$color1: #D800E5;
$color2: #010B3A;
$color3: #2300F5;
$color4: #FB0026;
$color5: #B34D30;
$color6: #FBFEFB;
$gray-base: green;
$gray-darker: lighten($gray-base, 13.5%);
$gray-dark: lighten($gray-base, 20%);
$gray: lighten($gray-base, 33.5%);
$gray-light: lighten($gray-base, 46.7%);
$gray-lighter: lighten($gray-base, 93.5%);
$brand-primary: darken($color1, 6.5%);
$brand-success: $color3;
$brand-info: orange; // i also tried using regular color assignments in case it was a variable issue. these don't work either
$brand-warning: green;
$brand-danger: yellow;
$icon-font-path: '~bootstrap-sass/assets/fonts/bootstrap/';
@import "~bootstrap-sass/assets/stylesheets/bootstrap";
body{
background-color:$color2;
color: $color2;
}
当我在浏览器中查看模板时,原色覆盖有效,但灰色覆盖和基于状态的覆盖无效:
我仍在研究文档以找出我做错了什么,但我认为对于更熟悉前端样式的人来说这可能是显而易见的。
您正在对要以绿色而不是灰色显示的元素使用 well
class。
但是井的默认颜色 is defined as:
$well-bg: #f5f5f5 !default;
$well-border: darken($well-bg, 7%) !default;
所以如果你想改变井的颜色,你应该改变$well-bg
的颜色。如果您想查看使用 $gray-base
颜色的元素,请在 this file.
$gray
OP 编辑
请注意,您要覆盖的变量名称可在文件中找到:_bootstrap-variables.scss
。
如果您通过 npm(我在这个项目中正在做)引入 bootstrap-sass,可以在
找到该文件node_modules/bootstrap-sass/templates/project/_bootstrap-variables.scss
您应该为成功面板覆盖此变量 $panel-success-border, $panel-success-text, $panel-success-heading-bg, $panel-success-border
,其他类似。