用户
 找回密码
 入住 CI 中国社区
搜索
查看: 11017|回复: 14
收起左侧

在视图中图片路径问题

[复制链接]
发表于 2008-6-3 14:07:23 | 显示全部楼层 |阅读模式
假如在system/application/views中有一个子文件夹admin中创建视图index.php,其中页面的图片全部在当前目录system/application/views/admin/images中
URL是mysite.com/index.php/admin/来访问,
那么请问在视图index.php中图片的路径应该怎样写才能正常显示?
发表于 2008-6-3 16:48:16 | 显示全部楼层
强烈建议不要把视图中用到的样式图片JS文件等放在视图目录中。。。
应该外在跟system同级的目录中。。
这样可以通过<?php echo base_url()?>images/abc.jpg访问到……
放在视图目录中,感觉就是很别扭……
 楼主| 发表于 2008-6-3 19:01:47 | 显示全部楼层
谢谢楼上的提醒
发表于 2008-6-3 22:26:05 | 显示全部楼层
对,你所看到的 index.php/aaa/bbb 中的 /aaa/bbb 只是一个 URL 参数,并不是路径,所以你放到视图目录下没有任何意义和好处!
发表于 2009-1-2 16:28:13 | 显示全部楼层
好东西,学习了。正在研究路径问题呢。:)
发表于 2009-5-3 12:27:20 | 显示全部楼层
我有个问题。 images和Css目录与index.php同级, 同时也启用了apache的rewrite。 这时通过设置base标签,引用css可以使用相对路径如下:

<base href="http://192.168.1.139/test/" />
<link rel="stylesheet" type="text/css" href="css/default.css" />

这时问题来了,
我在CSS中要使用背景图片:

background-image: url(images/link.jpg);

发现相对路径没有作用。我只能通过以下两种方式:
1, 硬写
background-image: url(http://192.168.1.139/test/images/link.jpg);
这显然不好。
2,将带相对路径的CSS移出放到PHP中
<base href="http://192.168.1.139/test/" />
<link rel="stylesheet" type="text/css" href="css/default.css" />
<style type="text/css">
。。。
background-image: url(images/link.jpg);
。。。
</style>
这让我觉得很郁闷。明明可以都放到CSS中的,为什么一定要写到php中呢?

请大家教我!
发表于 2009-5-3 22:00:55 | 显示全部楼层
css和image同目录,写路径直接:
比如\img\css.css
\img\bg.gif
在css里面写:backxxxx:url(bg.gif) 就可以显示了
发表于 2009-5-4 12:17:25 | 显示全部楼层
我以前做网站都是把CSS样式里会调用到的图片放到同CSS同级目录下, 不过会建个文档.如下格式:
/style/base.css
/style/img/logo.gif

这样在 base.css 调用图片时只要写
background:url(img/logo.gif) no-repeat;
就行了.

前两天在学CI, 今天开始用, CI应该也可以这样做的.
发表于 2009-5-4 17:07:50 | 显示全部楼层
images和Css目录与index.php同级
background-image: url('../images/link.jpg');
这样不就行了吗?
发表于 2009-5-4 19:58:03 | 显示全部楼层
小伙,css中的相对路径是不一样滴,很简单,css中的路径位置就是跟次css的位置相关
比如
/folder/a.css
   url(../images/a.jpg)

correct position:
/folder/images/a.jpg

本版积分规则