Cakephp 使用主题从css中获取PHP图像
im在应用程序im中使用主题,需要一个全局css/img/js文件夹 我尝试使用app/webroot作为此文件夹,但无法从主题中获取任何css来显示图像 我的设置如下::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
/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,这样就没有子文件夹了,然后一切都好了