gpt4 book ai didi

css - 如何根据根选择器有条件地设置 scss 变量值

转载 作者:行者123 更新时间:2023-11-28 19:29:08 24 4
gpt4 key购买 nike

我想根据 body 标签的选择器更改变量的值。

例如:

$body-bg: green;
$text-color: red;
$border-style: grey;

body{
background:$body-bg;
color: $text-color;
}

如果 body 有类 'dark',则变量值应该有条件地更改为这样的值:

$body-bg: black;
$text-color: white;

不幸的是,在不同的文件中有很多覆盖。所以我不能在所有地方覆盖。所以在我的场景中,唯一的方法是根据选择器覆盖变量的值。

最佳答案

$_contrast-low :     $_color-black !default;

$_contrast-high : $_color-white !default;

// Find the best contrast color compared to a color
@function get-contrast-text($base-color) {

$color-brightness: round((red($base-color) * 299) + (green($base-color) * 587) + (blue($base-color) * 114) / 1000);
$light-color: round((red(#ffffff) * 299) + (green(#ffffff) * 587) + (blue(#ffffff) * 114) / 1000);

@if abs($color-brightness) < ($light-color/2){
@return $_contrast-high;
}

@return $_contrast-low;
}

你可以使用:

$my-color: #fff;
.hello {
background : $my-color;
color: get-contrast-text($my-color);
}

关于css - 如何根据根选择器有条件地设置 scss 变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55439431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com