css - Assetic 的 cssrewrite 和子文件夹

标签 css assetic

我在 Web 应用程序中使用 Assetic 和 Twig。我没有使用 symfony2 框架。

元素结构是这样的

  • 应用

    • 风格
    • 图片
  • www

    • CSS
    • 图片

我在我的一个模板中使用 Assetic 样式表标签进行了标记:

{% stylesheets 'style/a.css' filter='cssrewrite' output='css/*'%}
   <link href="{{ asset_url }}" rel='stylesheet' type='text/css'>
{% endstylesheets  %}

目前该应用托管在 http://localhost/myapp/ 中并且可以通过 http://localhost/myapp/www 访问它

我已经编写了一个转储条来编译我的 Assets 并将它们转储到 www 下的目录。

在我的 CSS 中,我使用绝对路径引用我的图像(有效):

#myelement{
  background: url('/app/www/images/b.png') no-repeat;
}

如果我使用相对路径(使用 cssrewrite 过滤器),URL 不会被重写:

#myelement{
  background: url('images/b.png') no-repeat;
}

我想将我的 URL 用作 images/b.png,然后让 assetic dumper 确定完整路径。

我已经启用了 cssrewrite 过滤器,但它似乎没有做任何事情。如何在我的 CSS 中提供相对路径并让 cssrewrite 将其重写为绝对路径?

最佳答案

事实证明我不必使用 cssrewrite。

由于 CSS 会加载与 CSS 文件相关的图像,因此我只是执行了 ../images/image.png。这是一个更简单的解决方案,但我仍然没有弄清楚 cssrewrite 是如何工作的。

关于css - Assetic 的 cssrewrite 和子文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9303329/

相关文章:

css - 如何设置 <td> 的高度 1px

javascript - 在 html.twig symfony2 中导入 js

symfony - assetic:dump 在 "less"过滤器上失败

css - Symfony 2.7 + Sass + Assetic 不创建任何样式或文件

php - 自定义 Symfony2 过滤器不使用自定义 Twig 标签触发

html - 标签标签还是表格标签?

javascript - 为什么IE10会加载旧版IE样式表

symfony - 使用 Assetic/Twig/Symfony2,我可以定义前端库吗?

html - 如何让 div 在必要时展开,就像表格一样?

javascript - 如何制作 jquery 代码,只在触摸屏上工作?