在 bootstrap sass 中为暗光模式创建新的配色方案

Muz*_*maz 10 sass twitter-bootstrap scss-mixins bootstrap-5

我想为使用 bootstrap 的网站创建暗模式。我必须添加新的根类,其中包括所有 boostrap 颜色。这是我的 color.scss:

$primary:#065FC6;
$secondary:#263C5C;
$success:#49C96D;
$danger:#FD7972;
$warning:#FF965D;
$light:#F8F8F8;
$body-color: #263C5C;

$custom-colors: (
  "brd-default": $body-color
  );
  
Run Code Online (Sandbox Code Playgroud)

我想创建这样的新课程:

:root.dark{
    // override colors and classes for dark mode
    $primary:#012345;
    $secondary:#111111;
    $success:#222222;
}
Run Code Online (Sandbox Code Playgroud)

那么我如何复制并粘贴所有引导颜色以获得新的配色方案?

如果我可以添加颜色,我将更改 HTML 类,这样我的根(配色方案)将是:

在此输入图像描述

在我的 styles.scss 中:

@import "./colors";// custom colors
@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/utilities";
Run Code Online (Sandbox Code Playgroud)

Zim*_*Zim 25

正如这里所解释的,没有办法将类附加到:root. 但是,您不需要这个来实现您想要的。

只需创建一个dark类,然后您可以根据需要将其添加到 html 或 body 标记中。

.dark{} 中进行所有需要的主题颜色更改,然后@import“bootstrap”。当.dark主体上不存在时,主题颜色将恢复为 Bootstrap 默认值。

@import "functions";
@import "variables";
@import "mixins";


.dark {

    /* redefine theme colors for dark theme */
    $primary: #012345;
    $secondary: #111111;
    $success: #222222;
    $dark: #000;
    
    $theme-colors: (
        "primary": $primary,
        "secondary": $secondary,
        "success": $success,
        "danger": $danger,
        "info": $indigo,
        "dark": $dark,
        "light": $light,
    );

    /* redefine theme color variables */
    @each $color, $value in $theme-colors {
        --#{$variable-prefix}#{$color}: #{$value};
    }

    /* redefine theme color rgb vars (used for bg- colors) */
    $theme-colors-rgb: map-loop($theme-colors, to-rgb, "$value");
    @each $color, $value in $theme-colors-rgb {
        --#{$variable-prefix}#{$color}-rgb: #{$value};
    }

    $body-color: #eeeeee;
    $body-bg: #263C5C;
    
    --#{$variable-prefix}body-color: #{$body-color};
    --#{$variable-prefix}body-bg: #{$body-bg};
      
    @import "bootstrap";
}

Run Code Online (Sandbox Code Playgroud)

Bootstrap 5 深色主题

  • https://github.com/vinorodrigues/bootstrap-dark-5 概念验证项目展示了如何使用 6 种不同变体通过 Bootstrap 实现暗模式。“bootstrap-nightshade”变体展示了如何使用“.dark”类集实现黑暗模式。 (2认同)