我是codeigniter的新手。我做了一个简单的控制器来加载三个视图:页眉,正文和页脚。我的标题包含指向具有相对路径的几个javascripts和CSS的链接。我将所有css和js保存在views文件夹中的文件中。
问题是控制器正确加载所有内容但是图像,js和css没有加载。
这是我的观点的层次结构:
CSS(视图中的子目录) JS(视图中的子目录)
标题(标题视图文件) 身体(身体视图文件) 页脚(页脚视图文件)
答案 0 :(得分:6)
将所有内容都放在视图文件中并不是一个好主意,因为这些文件夹应该清理它们,将它们放在视图中会使它们再次变得混乱。
假设这是您的目录:
本地主机
要包含任何javascripts,路径将是:
localhost/Assets/Javascripts/your_script.js
显然CSS会是
localhost/Assets/CSS/your_stylesheet.css
为了确保您的实施工作无处不在,
<script src="<?=base_url('path/to/your/js/foo.js')>" type="text/javascript"></script>
将是最安全的方式
答案 1 :(得分:4)
您需要将文件放在基本目录中,例如包含应用程序和系统文件夹的那个。
尝试使用名为assests的文件夹。
同时确保您使用的是前导斜杠,例如
href="/assets/css/style.css"
请注意,这将从基础URI加载
e.g。 example.local /资产/ CSS / style.css中
答案 2 :(得分:2)
我建议您不要将js / images / css文件保存在视图文件夹中。
请参阅过去的问题。 Where do I put image files, css, js, etc. in Codeigniter?
至于回答你的问题,就像戴尔说的那样。
首先,您需要检查.htaccess,并注意您的基本目录在哪里。
然后,您必须提供适合您的js / css文件夹的路径链接。如果你将它们保存在你的视图文件夹中,你似乎必须这样做了网址
http://localhost/codeigniter/index.php/application/views/css/text.css
如果我没错,你现在在
"http://localhost/codeigniter/index.php/admin"
尝试加载css文件。如果你使用href =“something”,它只会添加到你当前的URL。这将提供“http://localhost/codeigniter/index.php/admin/something”IMO不是您正在寻找的。 p>
答案 3 :(得分:0)
链接到css文件的最佳方式是这样的
echo link_tag('css/reset.css');
请注意,链接标记不使用/,而下面的hs文件
您的css和js需要位于根目录
中JS文件
<script defer src="/media/javascripts/scrips.js"></script>
也在根目录中。腐败您的目录将是不同的
您无法链接到同一视图目录中的css文件