我正在开发codeigniter。 我为我的主页设置了背景图片。 现在发生的事情是,当我点击家庭控制器时,一个视图被调用并且它工作正常,但是当我尝试从另一个函数中明确地调用视图时,背景图像消失了,其他一切都保留在它的位置上。
这就是我在header_view的顶部,从这里调用背景图像。
<html lan="en">
<head>
<style>
body {
background-image: url("public/img/back1.jpg");
background-repeat: no-repeat;
background-position: right top;
}
</style>
这是我的控制器index()
功能,当控制器被命中时会自动调用。
public function index() {
$this->load->view('home/inc/header_view');
$this->load->view('home/home_view');
$this->load->view('home/inc/footer_view');
}
每次点击控制器时都能正常工作。
在我明确调用的控制器的另一个函数之下,它还调用与索引函数相同的视图,但在输出中缺少背景图像。
public function get_user() {
$this->load->view('home/inc/header_view');
$this->load->view('home/home_view');
$this->load->view('home/inc/footer_view');
}
我不明白当我点击控制器与get_user()函数做同样事情时自动调用的index()函数是什么问题,但是为什么输出在get_user()中不正确。请帮忙。感谢
答案 0 :(得分:1)
为了防止每次转到不同页面时相对链接发生变化,您需要自动加载uri帮助程序并将样式和脚本URL包装为base_url()
,如下所示:
background-image: url("<?php base_url('relative/path/to/image.img'); ?>");
答案 1 :(得分:1)
在您的application \ config \ config.php文件中设置baseurl,如下所示
$config['base_url'] = 'http:/example.com/';//make sure it is your main path
现在改变这样的身体风格
background-image: url("<?php echo base_url();?>public/img/back1.jpg");
确保您有public/img
这样的文件夹,图片就在那里
希望它能帮到你
答案 2 :(得分:1)
使用base_url()函数Read more