在Twig with Symfony2中使用{%stylesheets%}标记时,通过Twig运行CSS文件

时间:2012-06-14 12:35:36

标签: css symfony twig assetic

我在我的模板中包含了CSS样式表,如下所示:

{% stylesheets
    "@SomeBundle/Resources/assets/css/default.css.twig"
    "@SomeBundle/Resources/assets/css/global.css.twig"
%}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}

但是我想通过Twig运行这些CSS文件,这在使用{% stylesheets %}标签时是否有任何可能,或者这需要一些其他方法。我已经尝试启用twig过滤器但不存在。

2 个答案:

答案 0 :(得分:3)

如果将css作为内部样式表加载,则可以执行此操作。像这样:

{% block stylesheets %}
    {{ parent() }}
    {% include 'AcmeBundle:Bundle:mycss.css.twig' %}
{% endblock %}

然后mycss.css.twig模板将包含:

<style type="text/css">
    /* */
</style>

答案 1 :(得分:1)

使用SassLESS或类似功能处理带有Twig的CSS时,您可能希望做的最常见的事情可以用作资产过滤器。 Google推出的第一个教程就是这个:http://alexandre-salome.fr/blog/Sass-Compass-Assetic-In-Ten-Minutes

不可否认,如果您无法在正在开发的生产服务器上运行Ruby / Node.js /,那么这看起来并没什么帮助,但应该可以创建基于一个的Assetic过滤器如果是这样的话,Sass / LESS的PHP端口(假设它们没有任何好处)。