2012-06-14 7 views
11

jestem w tym arkuszy stylów CSS w moim szablonie tak:Uruchom plik CSS poprzez Gałązka przy użyciu {%} stylów% znaczników w gałązka z Symfony2

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

Jednak chcę uruchomić te pliki CSS przez gałązka, jest to w jakikolwiek sposób możliwe przy użyciu znacznika {% stylesheets %} lub wymaga to innego podejścia. Próbowałem już wcześniej włączyć filtr twig, ale to nie istnieje.

+4

Znacznik 'stylesheets' nie jest powiązany z Twig. Ten znacznik jest współdzielony przez 'AsseticBundle'. Czy mógłbyś wyjaśnić swoje pytanie, ciężko mi zrozumieć, co próbujesz osiągnąć :) – Matt

+0

@Matt Cóż, chcę zachować korzyści, które daje mi Assetic, podczas uruchamiania arkusza stylów przez Twig. –

+0

@ Xeross, jeśli możesz powiedzieć bardziej konkretnie, dlaczego chcesz to zrobić, możesz zobaczyć lepsze wyniki. –

Odpowiedz

3

Można to zrobić, jeśli załaduje się css jako wewnętrzny arkusz stylów. Coś takiego:

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

A potem szablon mycss.css.twig będzie zawierać:

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

Tak, to przyszło mi do głowy, jednak traci się korzyści z posiadania stylów w osobnym zbiorze podręcznym. –

1

Najczęściej rzeczy, którą chcesz zrobić przy przetwarzaniu CSS z gałązką powinno być możliwe z Sass, LESS lub podobny, który można zastosować jako filtry zasobów. Pierwszy samouczek, który zwrócił Google, to był ten: http://alexandre-salome.fr/blog/Sass-Compass-Assetic-In-Ten-Minutes

To prawda, że ​​nie jest to pomocne, jeśli nie możesz uruchomić Ruby/Node.js/cokolwiek na serwerze produkcyjnym, który tworzysz, ale powinno być możliwe utworzenie filtra zasobów na podstawie jednego z portów PHP Sass/LESS (zakładając, że są one dobre), jeśli tak jest.

Powiązane problemy