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 文件出现问题。但是,这可以通过使用 cssrewrite 过滤器来解决,该过滤器会更新 CSS 文件中的路径以反映它们的新位置。

所以你需要启用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 回答