0

使用しようとしている CSS スプライト シートがありますが、CSS ファイルで画像を「見る」ことができません。私はここで提供された答えに従いましたが、役に立ちませんでした。私のバンドル構造は次のとおりです。

src/
    vendor/
        project/
            bundle/
                Resources/
                    public/
                        css/
                            normalize.css
                            static.css
                        images/
                            sprites.jpg

私はすでにやった:

$ app/console assets:install
Installing assets using the hard copy option
Installing assets for Symfony\Bundle\FrameworkBundle into web/bundles/framework
Installing assets for MajorProductions\SewingDiva\SiteBundle into web/bundles/majorproductionssewingdivasite
Installing assets for Sensio\Bundle\DistributionBundle into web/bundles/sensiodistribution

と:

$ app/console assetic:dump
Dumping all dev assets.
Debug mode is on.

22:19:13 [file+] /home/kevin/www/diva/app/../web/css/06758be.css
22:19:13 [file+] /home/kevin/www/diva/app/../web/css/06758be_part_1_normalize_1.css
22:19:13 [file+] /home/kevin/www/diva/app/../web/css/06758be_part_1_static_2.css

他に何をすべきかわからない....

4

3 に答える 3

6

参照を次のように変更して解決しました。

{% block styles %}
    {% stylesheets '@MajorProductionsSewingDivaSiteBundle/Resources/public/css/*' filter='cssrewrite' %}
        <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
    {% endstylesheets %}
{% endblock %}

に:

{% block styles %}
    {% stylesheets 'bundles/majorproductionssewingdivasite/css/*' filter='cssrewrite' %}
        <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
    {% endstylesheets %}
{% endblock %}

どうやら、最初のバージョンの自動魔法の参照は、公式のSymfonyドキュメントで使用されているにもかかわらず、進むべき道ではありません。

于 2012-12-09T15:27:57.813 に答える
1

@ケビンM1

公式の Symfony ドキュメントで > 使用されているにもかかわらず、最初のバージョンの自動魔法のリファレンスは適切ではないようです。

ここにあります(フランス語ですが、他の言語の同等のドキュメントが確かに存在します)

于 2013-06-18T14:24:02.160 に答える
-1

さて、ドキュメントから:

これは重要なポイントです。Asseticにアセットを処理させると、ファイルは別の場所から提供されます。これにより、相対パスで画像を参照するCSSファイルで問題が発生する可能性があります。ただし、これは、CSSファイルのパスを更新して新しい場所を反映するcssrewriteフィルターを使用することで修正できます。

cssrewriteしたがって、フィルターを有効にする必要があります。

# app/config/config.yml
assetic:
    filters:
        cssrewrite: ~

そしてあなたのstylesheetsブロックでそれを使用してください:

{% stylesheets '@AcmeProjectBundle/Resources/css' filter='cssrewrite' %}
    <link href="{{ asset_url }}">
{% endstylesheets %}
于 2012-12-09T08:39:15.313 に答える