我找不到这个问题的解决方案:我需要在 SASS 中设置一个边距,最大值介于 2 个值之间,一个是calc()
另一个是常规的 px 值。它会是这样的:
$calculation: calc(15vw + 10px);
.cssClass {
margin-right: max($calculation, 100px);
}
关于如何创建 SCSS 函数或实现此功能的某种方法有什么想法吗?先感谢您!
萨斯max()
函数不适用于具有不同单位的值。
也就是说,你可以使用 CSSmax()通过用您自己的版本覆盖 Sass 版本来实现功能:
// Override Sass function
@function max($numbers...) {
@return m#{a}x(#{$numbers});
}
$calculation: calc(15vw + 10px);
.cssClass {
margin-right: max($calculation, 100px);
}
...上面的 SCSS 编译为以下 CSS:
.cssClass {
margin-right: max(calc(15vw + 10px), 100px);
}
归功于GitHub 上的肖剑秋指出这个解决方案。必须创建自定义函数是一个不幸的 Sass 编译器怪癖,尽管它显然已经在 Dart Sass 中得到了修复。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)