私はコンパスを使用するmoovwebプロジェクトに取り組んでいます。今、私はスプライトの2倍のイメージのサポートを実装しています。右この後、私はを含むと2倍のためスプライトルールを生成しますSCSSファイルを実行しています、そしてコンパスにエラーが発生しました。認識できないファイルタイプ:png '))
$icons-dimensions: true;
@import "icons/*.png";
@include all-icons-sprites;
そして:私がやっている何
はそうのように、コンパスは、1×スプライトを生成させることです(メディアクエリを使用して):
@import "../_retina-sprites.scss";
$icons2x: sprite-map("icons2x/*.png");
.icons-logo {
@include retina-sprite(logo, $icons2x);
}
.iconsバッグ{ @include網膜スプライト(袋、$ icons2x)。 }
私はそうのような2倍の画像を選択するメディアクエリルールを追加するにはミックスインを含むように(Adam Brodzinski's versionに基づいて)この_retina-sprites.scssを作成しました:
@import "compass/utilities/sprites"; // Include compass sprite helpers
@import "compass/css3/background-size"; // Include helper to calc background size
@mixin retina-sprite($name, $sprites2x) {
background-repeat: no-repeat;
@media (-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) {
& {
$pos: sprite-position($sprites2x, $name);
background-image: sprite-url($sprites2x);
background-position: nth($pos, 1)/2 nth($pos, 2)/2;
@include background-size(ceil(image-width(sprite-path($sprites2x))/2) auto);
}
}
}
はしかし、私はこれを取得しています出力呼び出す行上のスプライトを生成するときsprite-path()
:私はそのコンパスが故に'))
suffiを与え、代わりにスプライトパスのスプライトURLを書いていると思わせる
Syntax error: Unrecognized file type: png'))
xをファイル名に置き換えます。
誰もこれに前に来ていますか?
こんにちは@noj、これは本当に問題を特定するのに役立ちました。その理由は、コンパスバージョン0.11.7(antares)の後には多くのスプライト関数が含まれていたからです。私はそのコードスニペットの一部を使っていました。私の地域の環境では、0.12.2(Alniman)のコンパスを使っていましたが、うまくいきました。しかし、統合環境では、私は0.11.7しか使用できませんでした。ご協力いただきありがとうございます! – fegemo