我的主要目标是在此罗盘中添加内置mixin sprite-position
:
@mixin sprite-position($col, $row: 1, $width: $sprite-image-default-width, $height: $sprite-image-default-height, $margin: $sprite-default-margin) {
$x: ($col - 1) * -$width - ($col - 1) * $margin;
$y: ($row - 1) * -$height - ($row - 1) * $margin;
background-position: $x $y;
}
并添加此视网膜mixin sprite-position-retina
:
@mixin sprite-position-retina($col, $row: 1, $width: $sprite-image-default-width, $height: $sprite-image-default-height, $margin: $sprite-default-margin) {
...
background-position: $x/2 $y/2;
}
最终我想在我的文件中替换这行代码(这行正常工作):
background-position: sprite-position($sprites2x, $name);
使用此行(此行不起作用):
background-position: sprite-position-retina($sprites2x, $name);
问题在于它甚至不会识别sprite-position-retina
和混合,如果我将@include
添加到该行,则它不会识别任何变量和常量(就像参数I一样)我过世不是正确的事情)
我的问题是:
项目是用grunt / bower / yo等构建的。
答案 0 :(得分:0)
我找到了解决此问题的好方法:
我正在使用这个简单的mixin来获得新的精灵位置:
/* Converts sprite position to half of its original size (since we're 'squizing' the retina image by 2)*/
@mixin sprite-position-retina($spriteUrl, $name) {
$spriteData: sprite-position($spriteUrl, $name);
$x: nth($spriteData,1)/2;
$y: nth($spriteData,2)/2;
background-position: $x $y;
}