在codeigniter视图中放置css

时间:2012-04-19 11:05:55

标签: codeigniter views

我是codeigniter的新手。我做了一个简单的控制器来加载三个视图:页眉,正文和页脚。我的标题包含指向具有相对路径的几个javascripts和CSS的链接。我将所有css和js保存在views文件夹中的文件中。

问题是控制器正确加载所有内容但是图像,js和css没有加载。

这是我的观点的层次结构:

CSS(视图中的子目录) JS(视图中的子目录)

标题(标题视图文件) 身体(身体视图文件) 页脚(页脚视图文件)

想法?

4 个答案:

答案 0 :(得分:6)

将所有内容都放在视图文件中并不是一个好主意,因为这些文件夹应该清理它们,将它们放在视图中会使它们再次变得混乱。

假设这是您的目录:

本地主机

  • 应用
    • 控制器
    • 浏览
    • 等。
  • 系统
  • 资产
    • Javascript角
    • CSS

要包含任何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不是您正在寻找的。

答案 3 :(得分:0)

链接到css文件的最佳方式是这样的

echo link_tag('css/reset.css');

请注意,链接标记不使用/,而下面的hs文件

您的css和js需要位于根目录

JS文件

<script defer src="/media/javascripts/scrips.js"></script>

也在根目录中。腐败您的目录将是不同的

您无法链接到同一视图目录中的css文件

http://codeigniter.com/user_guide/helpers/html_helper.html