5

Compass を使用してスプライトを作成しています。スプライトは作成されていますが、css 出力がイメージ ディレクトリの間違った場所を指しています。

出力は次のとおりです。

.menu-sprite, .menu-about, .menu-art, .menu-drum, .menu-links, 
.menu-music, .menu-science, .menu-writing {
    background: url('/images/menu-sb7e36b009c.png') no-repeat;
}

しかし、私はそれが欲しい:

.menu-sprite, .menu-about, .menu-art, .menu-drum, .menu-links, 
.menu-music, .menu-science, .menu-writing {
    background: url('images/menu-sb7e36b009c.png') no-repeat;
}

これが私のconfib.rbセットアップです:

http_path = "/"
css_dir = "."
sass_dir = "sass"
images_dir = "images"
javascripts_dir = "js"

そして、これが私のscssファイルでスプライトを呼び出す方法です:

@import "compass/utilities/sprites/base";
@import "menu/*.png";
@include all-menu-sprites;

私は何を間違っていますか?画像の前にある最初のスラッシュを削除するにはどうすればよいですか?

助けてくれてありがとう。

4

1 に答える 1

6

デフォルトでは、コンパスはすべてのアセットに絶対パスを使用します。

この動作を変更するには、次の行を config.rb に追加します。

relative_assets = true

それ以外の場合は、'http_path' オプションを変更して、デプロイメント サーバー上のプロジェクト サイトの場所を指すようにすることもできます。

于 2012-06-20T06:44:01.657 に答える