当我加载 url 时:
http://icetopup.tk/secure/login
它有效。但是当我加载时:
http://icetopup.tk/secure/login/
它显示页面内容但没有CSS。有人知道怎么解决吗?
最佳答案
我想您的模板中有指向 CSS 文件的相对路径。这两条路径在 CodeIgniter 中的作用相同,但从浏览器的 Angular 来看,它们的含义截然不同:
http://icetopup.tk/secure/login
表示:'secure'目录下的资源'login',所以'/secure/'是相对路径的偏移目录。
http://icetopup.tk/secure/login/
表示:默认文档来自目录'login',所以'/secure/login/'是相对路径的偏移目录。
要解决这个问题,请确保使用 base_url()
函数:
<link rel="stylesheet" href="<?=base_url()?>/css/yourfile.css">
或
<link rel="stylesheet" href="<?=base_url('css/yourfile.css')?>">
此函数位于 URL 帮助程序文件中,因此您需要加载它(如果您尚未这样做的话)。
另见:
- > CodeIgniter User Guide: URL Helper - 官方文档
- > base_url() doesn't work - 相关问题
关于css - codeigniter Controller 和 controller/之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28284147/