Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cakephp 使用主题从css中获取PHP图像_Cakephp_Plugins_Themes_Assets - Fatal编程技术网

Cakephp 使用主题从css中获取PHP图像

Cakephp 使用主题从css中获取PHP图像,cakephp,plugins,themes,assets,Cakephp,Plugins,Themes,Assets,im在应用程序im中使用主题,需要一个全局css/img/js文件夹 我尝试使用app/webroot作为此文件夹,但无法从主题中获取任何css来显示图像 我的设置如下::/app/views/theme/my_theme/webroot/css/file.css 一些css看起来像: ... body{ background-image: url('../img/file.jpg'); } ... 如果我在/app/views/themed/my_theme/webroot/img

im在应用程序im中使用主题,需要一个全局css/img/js文件夹

我尝试使用app/webroot作为此文件夹,但无法从主题中获取任何css来显示图像

我的设置如下::
/app/views/theme/my_theme/webroot/css/file.css

一些css看起来像:

...
body{
     background-image: url('../img/file.jpg');
}
...
如果我在
/app/views/themed/my_theme/webroot/img/file.jpg
中有图像,一切都能100%工作,但当我将图像放入
/app/webroot/img/file.jpg
中时,它不会显示。我试过各种各样的组合

我也尝试过使用插件目录,比如
app/plugins/my_plugin/webroot/img/file.jpg
,但我尝试过的各种路径也不会显示图像

有什么办法可以让图像显示出来吗?我不介意它是用于webroot/还是在plugins/xyz/中,只要我可以在许多不同的主题中使用相同的图像,而不必复制图像

当图像位于/webroot/img中时,我可以使用像
url这样的完整路径(http://locahost/my_app/img/file.jpg)
,它可以工作

不起作用的事情

url(“img/file.jpg”)

url(“/img/file.jpg”)

url(“../img/file.jpg”)

url(“/../img/file.jpg”)

url(“../../img/file.jpg”)

谢谢。

在您的CSS文件中

正文{
背景图像:url('/img/file.jpg');
}

这将使用根区域在CSS文件的
/app/webroot/img/file.jpg

中查找图像

正文{
背景图像:url('/img/file.jpg');
}


这将使用根区域在
/app/webroot/img/file中查找图像。jpg

CSS具有相对于其所在路径的图像URL


来自my_theme的CSS文件在浏览器中链接为site.com/theme/my_theme/CSS/style.CSS。因此,如果您想在主题的CSS中使用app/webroot/img中的图像,请使用url(../../../img/image.png)

CSS具有相对于其放置路径的图像url


来自my_theme的CSS文件在浏览器中链接为site.com/theme/my_theme/CSS/style.CSS。因此,如果您想在主题的CSS中使用app/webroot/img中的图像,请使用url(../../../../img/image.png)

我没有尝试过,但是

如果你想保留你的主题资产 建议在app/webroot内部使用 将app/webroot/themed重命名为 app/webroot/theme


我没有试过,但报告说:

如果你想保留你的主题资产 建议在app/webroot内部使用 将app/webroot/themed重命名为 app/webroot/theme


steve和fahad19做对了,最后在我的apache配置中添加了vHost,这样就没有子文件夹了,然后一切都好了。steve和fahad19做对了,最后在我的apache配置中添加了vHost,这样就没有子文件夹了,然后一切都好了