Sass 颜色混合功能对不同的 ruby 版本产生不同的结果
Sass color mix function produce different results for different ruby versions
编译 sass 文件后的颜色输出在 ruby 2.1.6 和 2.2.2 之间有所不同。这是一个反常现象,还是我们可以期望如果我们将来升级 Ruby,混合函数会产生不同的值?
// test.scss
$white: white;
$black: black;
$dark-text: #2e3135;
$offwhite: #f7f8f8;
$error: #e32908;
.mixed {
color: mix($white, $black);
color: mix($black, $error);
color: mix($dark-text, $offwhite);
}
使用 2.1.6 编译
//ruby 2.1.6p336 (2015-04-13 revision 50298) [x64-mingw32]
//Compass 1.0.3 (Polaris)
//Sass 3.4.13 (Selective Steve)
.mixed {
color: #7f7f7f;
color: #711404;
color: #929496;
}
使用 2.2.2 编译
//ruby 2.2.2p95 (2015-04-13 revision 50295) [x64-mingw32]
//Compass 1.0.3 (Polaris)
//Sass 3.4.15 (Selective Steve):
.mixed {
color: gray;
color: #721504;
color: #939597;
}
颜色差异很小,所以没关系,但知道发生了什么会很有趣。
在@cimmanon
的评论后在 Sass changelog 中找到了这个
3.4.15(2015 年 6 月 22 日)
- 进一步改进各种数值运算的舍入。
- 基于运算符的颜色操作中的 Imp 舍入。
编译 sass 文件后的颜色输出在 ruby 2.1.6 和 2.2.2 之间有所不同。这是一个反常现象,还是我们可以期望如果我们将来升级 Ruby,混合函数会产生不同的值?
// test.scss
$white: white;
$black: black;
$dark-text: #2e3135;
$offwhite: #f7f8f8;
$error: #e32908;
.mixed {
color: mix($white, $black);
color: mix($black, $error);
color: mix($dark-text, $offwhite);
}
使用 2.1.6 编译
//ruby 2.1.6p336 (2015-04-13 revision 50298) [x64-mingw32]
//Compass 1.0.3 (Polaris)
//Sass 3.4.13 (Selective Steve)
.mixed {
color: #7f7f7f;
color: #711404;
color: #929496;
}
使用 2.2.2 编译
//ruby 2.2.2p95 (2015-04-13 revision 50295) [x64-mingw32]
//Compass 1.0.3 (Polaris)
//Sass 3.4.15 (Selective Steve):
.mixed {
color: gray;
color: #721504;
color: #939597;
}
颜色差异很小,所以没关系,但知道发生了什么会很有趣。
在@cimmanon
的评论后在 Sass changelog 中找到了这个3.4.15(2015 年 6 月 22 日)
- 进一步改进各种数值运算的舍入。
- 基于运算符的颜色操作中的 Imp 舍入。