css - 根据类设置 SASS 变量

标签 css function if-statement sass

我需要根据.withtable.notable 类来设置变量,并且元素的位置不同。 See the image或查看代码示例:

body.withtable {
 $logo_width: 130px;
 $logo_height: 80px;
}
body.notable {
 $logo_width: 200px;
 $logo_height: 100px;
}

这个东西怎么解决?有什么想法吗?

最佳答案

你不能那样传递变量。但是,您可能希望通过以下方式处理此问题:

.logo {
    body.withtable & {
        $logo_width: 130px;
        $logo_height: 80px;
        width: $logo_width;
        height: $logo_height;
    }
    body.notable & {
        $logo_width: 200px;
        $logo_height: 100px;
        width: $logo_width;
        height: $logo_height;
    }
}

当您将 Logo 属性保存在一个位置时,这可以使代码保持可读性和可管理性。将 & 字符放在末尾会检查它是否是 .logo 的父项而不是子项。

编译成:

body.withtable .logo {
  width: 130px;
  height: 80px; }

body.notable .logo {
  width: 200px;
  height: 100px; }
}

关于css - 根据类设置 SASS 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41595008/

相关文章:

javascript - 将鼠标悬停在 HTML/JS/JQUERY 中的列表上时弹出图像

html - 插入 HTML body 的多个背景图片

javascript - 如何在 Javascript 中将函数作为参数传递和调用?

c++ - 这个递归函数是如何工作的?合并排序两个单链表

Java JToggleButton 在 While 循环中卡住

bash - 为什么当我运行以下代码时 bash 告诉我找不到命令 if ?

javascript - div 内的 p 元素比父 div 宽

css - 我怎么称呼字体?

javascript - 如何在laravel中调用 ' '标记的路线

javascript - 单击函数从不读取 else 语句来删除类