Skip to content

Instantly share code, notes, and snippets.

@estahn
Created October 5, 2012 00:32
Show Gist options
  • Star 19 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save estahn/3837343 to your computer and use it in GitHub Desktop.
Save estahn/3837343 to your computer and use it in GitHub Desktop.
Using Compass to generate normal and retina sprite maps at once
@mixin all-retina-sprites($map, $map2x) {
@media (min--moz-device-pixel-ratio: 1.5),
(-o-min-device-pixel-ratio: 3/2),
(-webkit-min-device-pixel-ratio: 1.5),
(min-device-pixel-ratio: 1.5),
(min-resolution: 1.5dppx) {
$base-class: sprite-map-name($map);
.#{$base-class}-all-retina-sprites {
background-image: sprite-url($map2x);
@include background-size(ceil(image-width(sprite-path($map2x)) / 2) auto);
}
@each $sprite in sprite-names($map) {
.#{$base-class}-#{$sprite} {
@extend .#{$base-class}-all-retina-sprites;
$position: sprite-position($map2x, $sprite);
background-position: nth($position, 1) nth($position, 2) / 2;
}
}
}
}
// Sprite set: General
// ----------------------------------------
//$general-layout: smart;
$general-spacing: 1px;
$general-sprite-dimensions: true;
@import "general/*.png";
@include all-general-sprites;
$general-retina-spacing: 1px;
$general-retina-sprite-dimensions: true;
@import "general-retina/*.png";
//@include all-general-retina-sprites;
@include all-retina-sprites($general-sprites, $general-retina-sprites);
@amitmadd
Copy link

Many Thanks for sharing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment