亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Symfony 2中CSS文件中資產的路徑

Symfony 2中CSS文件中資產的路徑

天涯盡頭無女友 2019-12-09 14:04:21
問題我有一個CSS文件,其中包含一些路徑(用于圖像,字體等。url(..))。我的路徑結構是這樣的:...+-src/| +-MyCompany/|   +-MyBundle/|     +-Resources/|       +-assets/|         +-css/|           +-stylesheets...+-web/| +-images/|   +-images......我想在樣式表中引用我的圖像。第一個解決方案我將CSS文件中的所有路徑更改為絕對路徑。這不是解決方案,因為應用程序也應該(并且必須?。┮苍谧幽夸浿泄ぷ鳌5诙鉀Q方案與一起使用Assetic filter="cssrewrite"。所以我將我的CSS文件中的所有路徑都更改為url("../../../../../../web/images/myimage.png")代表從我的資源目錄到/web/images目錄的實際路徑。這不起作用,因為cssrewrite會生成以下代碼:url("../../Resources/assets/")這顯然是錯誤的道路。assetic:dump創建此路徑后,這仍然是錯誤的:url("../../../web/images/myimage.png")Assetic的樹枝代碼:{% stylesheets    '@MyCompanyMyBundle/Resources/assets/css/*.css'    filter="cssrewrite"%}<link rel="stylesheet" href="{{ asset_url }}" />{% endstylesheets %}當前(第三)解決方案由于所有CSS文件都以結尾/web/css/stylexyz.css,因此我將CSS文件中的所有路徑更改為相對路徑:url("../images/myimage.png")這種(錯誤的)解決方案可以正常工作,但在dev環境中除外:CSS路徑為/app_dev.php/css/stylexyz.css,因此由此產生的圖像路徑為/app_dev.php/images/myimage.png,從而導致NotFoundHttpException。有更好的可行解決方案嗎?
查看完整描述

3 回答

?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

目前,cssrewrite過濾器與@bundle表示法不兼容。因此,您有兩種選擇:


參考在網絡文件夾中的CSS文件(后:console assets:install --symlink web)


{% stylesheets '/bundles/myCompany/css/*." filter="cssrewrite" %}

使用cssembed過濾器像這樣將圖像嵌入CSS。


{% stylesheets '@MyCompanyMyBundle/Resources/assets/css/*.css' filter="cssembed" %}


查看完整回答
反對 回復 2019-12-09
  • 3 回答
  • 0 關注
  • 907 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號