当前位置:  开发笔记 > 前端 > 正文

如何在CakePHP中的CSS文件中处理URL,以便它们引用正确的位置?

如何解决《如何在CakePHP中的CSS文件中处理URL,以便它们引用正确的位置?》经验,为你挑选了1个好方法。

我正在使用CSS文件设计一个网站很多,但我有几次背景图片,列表中的子弹图像,我可能会发现另外需要css url()功能.

但是,在蛋糕中,所有URL都应该由Route::url()函数处理,在几个方面,最常见的$html->url()

但我的问题是PHP文件不是由PHP解释的.如何创建包含以下内容的CSS文件:

div.coolbg {
  background-image: url('url("/img/coolbg.jpg") ?>');
}

看,我的最后一个选项是在布局上内联导入css文件,以便可以解释它.但我更喜欢使用更"蛋糕"的方法.

谢谢!



1> neilcrookes..:

您不需要在css文件中使用$ html-> url(),因此您不需要通过PHP解析CSS文件或创建CssController.

如果您的蛋糕应用程序安装在虚拟主机DocumentRoot中,则只需从webroot创建映像的所有路径.例如

div.coolbg {
  background-image: url(/img/coolbg.jpg);
}

这将把app/webroot/img/coolbg.jpg上的图像应用到你的

如果您的蛋糕应用程序未安装在虚拟主机DocumentRoot中,即您通过http://www.domain.com/myapp/等 URL访问蛋糕应用程序,则会创建相对于css文件的图像路径.查看app/webroot/css/cake.generic.css中的样式规则,例如

#header h1 {
background:#003D4C url(../img/cake.icon.gif) no-repeat scroll left center;
color:#FFFFFF;
padding:0 30px;
}

这是因为样式表存在于app/webroot/css /目录中,而图像存在于app/webroot/img /目录中,所以路径"../img/cake.icon.gif"出现在css之外目录,然后回到img目录.


好吧,我完全不同意绝对路径,因为它不够通用,无法在多种情况下工作,但我会采用相对的解决方案,因为我要求"蛋糕方式",并没有比蛋糕在它自己的方式更好的方式CSS文件.谢谢 !
推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有