自定义颜色和主题的Bulma
P粉757640504
P粉757640504 2024-03-28 12:54:26
0
1
460

我目前正在尝试以 bulma 为基础做一个多主题设计系统。 但我目前正在努力添加多主题系统。

我将其添加到我的 customstyle scss 文件中,但它似乎不起作用

@charset "utf-8";


:root {
    --primary: red;
    --secondary: #068295;
}

body[class="light"] {
    --primary: #F7A800;
    --secondary: #068295;
}

body[class="dark"] {
    --primary: blue;
    --secondary: #068295;
}

$primary: var(--primary); // this works 
$background: blue;
$text-strong: red;

$secondary: #8BC91D; // this works but without theming
// $secondary: var(--secondary); // this doesn't work 
$secondary-invert: findColorInvert($secondary) !default;

$custom-colors: (
    "secondary":($secondary, $secondary-invert),
);

@import "../node_modules/bulma/sass/utilities/_all.sass";
@import "../node_modules/bulma/sass/base/_all.sass";
@import "../node_modules/bulma/sass/elements/button.sass";

当我运行node sass命令生成css文件时 我可以看到当我不使用变量时生成的 is-secondary 属性,但是当我使用变量来定义我的 $secondary 变量时,不会生成 is-secondary 属性

P粉757640504
P粉757640504

全部回复(1)
P粉745412116

Bulma 当前的主版本不支持 css 变量。

我通过使用 css-variables 分支使其工作。 npm 我 https://github.com/jgthms/bulma/tree/bulma-v1-css-variables;

首先进行导入:

@import 'bulma/sass/utilities/_all';
@import 'bulma/sass/base/_all';
@import 'bulma/sass/elements/_all';
@import 'bulma/sass/form/_all';
@import 'bulma/sass/components/_all';
@import 'bulma/sass/grid/_all';
@import 'bulma/sass/helpers/_all';
@import 'bulma/sass/layout/_all';
@import 'bulma/sass/themes/default.scss';

themes/default.scss 使所有 css 变量基于 sass 变量。

之后你可以使用 CSS 变量来修改默认值,这样你就可以拥有黑暗模式、主题切换器和其他东西。

:root {
  --bulma-danger-h: 190;
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!