gpt4 book ai didi

symfony - Assetic 和我的 Assets

转载 作者:行者123 更新时间:2023-12-02 14:40:21 29 4
gpt4 key购买 nike

我是 symfony 2 和 Assetic 的新手。我想在 CSS 中使用 assetic 和 Sass。我使用自定义字体。我在资源下的包中创建文件夹“assets/css”,里面有 _base.scss 和 main.scss。在我的公共(public)文件夹中,我有:

  • CSS
  • 字体
  • 图片
  • js

在字体中,我有自定义字体。

在我的 SCSS 中,我检索字体和图像,如下所示:

    @include font-face("billabongregular", font-files("/bundles/Mybundle/fonts/billabong-webfont.ttf"));
background: $bg_header url("/bundles/Mybundle/images/darkGreyBackground.jpg") fixed no-repeat top center;

我在 asset:install 之后有这个路径,并且我的文件位于 web/mybundle/fonts 和 web/mybundle/images 下

当我执行 php app/console assetic:dump --env=prod --no-debug

我的网站上有:

  • CSS
  • js(公共(public)文件夹)

但我没有字体文件夹和图像文件夹。如果 IO 在图像中看到源代码,我有这个路径/bundles/Mybundle/images/darkGreyBackground.jpg

为什么我的网站上没有所有文件夹?使用/bundles/Mybundle/images/darkGreyBackground.jpg 和/bundles/Mybundle/fonts/billabong-webfont.ttf 调用我的图像和字体是否正确?

最佳答案

这是一种标准且预期的行为,在调用 php app/console assetic:dump 后,包资源的符号链接(symbolic link)位于 web/bundles/Mybundle/ 命令。

要在 css 中使用资源生成的路径,您可以使用 cssrewrite 过滤器,或者更简单的是,您的 cssimages 文件夹在同一主文件夹中,使用相对路径:

@include font-face("billabongregular", font-files("../fonts/billabong-webfont.ttf"));
background: $bg_header url("../images/darkGreyBackground.jpg") fixed no-repeat top center;

编辑

在您的 bundle 中,如果您希望在运行 assets:install 命令后可以在 web 目录中访问文件,则必须将它们放入 Resources/public/ 目录,如下所述:http://symfony.com/doc/current/book/page_creation.html#bundle-directory-structure

关于symfony - Assetic 和我的 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15073559/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com