【问题标题】:Rendering a CSS file using Twig使用 Twig 渲染 CSS 文件
【发布时间】:2012-11-03 22:26:56
【问题描述】:

我使用 Twig 作为模板引擎。 我想通过 Twig 渲染我的 CSS 文件,并具有宏的优势。 我收到的回复看起来不错。但不知何故,如果我包含它,HTML 页面不会将其识别为 css 文件。 当我包含真正的 css 文件时,该站点工作得很好。 收到的源码对比一下,一模一样……

虽然,Chrome 以不同的方式显示文件。 它在一行上显示渲染文件。 它可能被解释为 HTML 文件。

真正的 css 文件像源代码一样多行显示。

您包含扩展名为 .css 的两个文件。 我该如何解决这个问题?

【问题讨论】:

    标签: php html css twig template-engine


    【解决方案1】:

    你说你得到了正确的内容,但它没有被解释为 css。这可能是因为不正确的 contenty-type 标头。

    Css 文件应以text/css 发送,在 Sf 中默认为text/html。在呈现 CSS 的操作中,确保设置正确的标题。

    【讨论】:

    • 是的,这听起来很合法。你知道如何在 Twig 中做到这一点吗? Google 不知道答案。
    • 好的,通过设置 header("Content-Type: text/css");难道没有更优雅的方式吗?
    • 您可以在控制器中的 Response 对象上设置标题。
    【解决方案2】:

    也许你应该看看LESS,它比解析你的 CSS 文件更高效。使用 LESS,您有很多可能性来制作块和重用带有变量的函数。

    也许它可以解决您的问题。

    编辑:
    Template Suffix
    Run CSS file through Twig when using {% stylesheets %} tag in Twig with Symfony2

    【讨论】:

    • 谢谢,但我想保留那个计划 B。我已经在使用 Twig 处理我的所有文件,这就是为什么我想对我的 CSS 文件做同样的事情。
    • 我添加了 2 个解决方案链接。
    • 引擎后缀没有解决我的问题。我认为 Twig 没有指定类型。第二个链接还没有解决方案。
    • 看看解决方案。不过感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-26
    • 1970-01-01
    • 2016-09-20
    • 2014-09-13
    相关资源
    最近更新 更多