我使用Twig作爲模板引擎。 我想通過Twig渲染我的CSS文件,並利用宏。 我收到的迴應看起來不錯。但不知何故,如果我包含它,HTML頁面不會將其識別爲一個css文件。 當我包含真正的CSS文件時,該網站工作得很好。 收到的源代碼的比較是完全一樣的...使用Twig呈現CSS文件
雖然,Chrome顯示不同的文件。 它在一行上顯示渲染文件。 它可能被解釋爲一個HTML文件。
真正的css文件像源代碼一樣顯示在多行上。
包含擴展名爲.css的兩個文件。 我該如何解決這個問題?
我使用Twig作爲模板引擎。 我想通過Twig渲染我的CSS文件,並利用宏。 我收到的迴應看起來不錯。但不知何故,如果我包含它,HTML頁面不會將其識別爲一個css文件。 當我包含真正的CSS文件時,該網站工作得很好。 收到的源代碼的比較是完全一樣的...使用Twig呈現CSS文件
雖然,Chrome顯示不同的文件。 它在一行上顯示渲染文件。 它可能被解釋爲一個HTML文件。
真正的css文件像源代碼一樣顯示在多行上。
包含擴展名爲.css的兩個文件。 我該如何解決這個問題?
你說你得到正確的內容,但它不會被解釋爲CSS。這可能是因爲contenty類型的標題不正確。
Css文件應該發送爲text/css
,在Sf中默認爲text/html
。在呈現您的CSS的動作中,確保設置正確的標題。
也許你應該看看LESS它更有效,而不是解析你的CSS文件。使用LESS,您可以通過變量創建塊和重用函數。
也許它是你的問題的替代方案。
編輯:
Template Suffix
Run CSS file through Twig when using {% stylesheets %} tag in Twig with Symfony2
是的,這聽起來合法。你知道如何在Twig中做到這一點? Google不知道答案。 – NSAddict
好吧,它通過設置標題(「Content-Type:text/css」);沒有更優雅的方式嗎? – NSAddict
您可以在'Response'對象的控制器中設置標題。 – Maerlyn