如何在twig模板中加载的css文件中有图像?

时间:2015-01-15 22:39:18

标签: symfony twig

在twig模板中我将它用于图像:

{% image '@AcmeFooBundle/Resources/public/images/example.jpg' %}
    <img src="{{ asset_url }}" alt="Example" />
{% endimage %}

这对于css:

{% stylesheets '@AppBundle/Resources/public/css/*' %}
   <link rel="stylesheet" href="{{ asset_url }}" type="text/css" />
{% endstylesheets %}

但在我的CSS中,我有一些带图像的课程:

background-image: url(../images/left_menu_bg.jpg);

当然图像坏了,有什么方法可以解决这个问题吗?或者我需要以任何方式将背景图像移动到树枝模板?如果是的话我怎么能有div的背景imgae?

<div class="blah" background="image.jpg">

我不认为完整的道路如下:

background-image: url(Acme/AcmeDemo/images/left_menu_bg.jpg);
由于URI中的查询参数,

会有帮助吗?

1 个答案:

答案 0 :(得分:2)

您应该在样式表标记中使用cssrewrite过滤器:

来自symfony doc:http://symfony.com/doc/current/cookbook/assetic/asset_management.html#cookbook-assetic-including-css

  

但是因为Assetic改变了资产的路径,所以这会破坏   任何使用相对路径的背景图像(或其他路径),   除非你使用cssrewrite过滤器。

{% stylesheets 'bundles/acme_foo/css/*' filter='cssrewrite' %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}