Codeigniter 3-缺少CSS文件 [英] codeigniter 3 - missing css files

查看:59
本文介绍了Codeigniter 3-缺少CSS文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问题描述:

当我导航到Web应用程序中的某些页面时,未加载/找到CSS文件。我收到404找不到错误,看不到原因。一定是我看不到的简单事物。

when i navigate to some pages in my web app, the css files are not being loaded / found. I'm getting 404 not found errors and I can't see why. It must be something simple that I'm not seeing.

具体来说,当我导航到默认页面时,它可以工作(调用下面的index()方法),但是当我尝试运行getallswitches()页面时,没有CSS文件已加载。

Specifically, when I navigate to default page, it works (calls the index() method below) but when I try to run the getallswitches() page, none of the css files are loaded.

代码

我具有以下CI控制器:

I have the following CI controller:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Objects extends CI_Controller {

        public function __construct()
        {
                parent::__construct();
                $this->load->model('objects_model');
        }

        public function index()
        {
                $data['main_content'] = 'default';
                $this->load->view('includes/template',$data);
        }

        public function getallswitches()
        {
                $switches= $this->objects_model->get_all_switches();
                $data['switches']= json_encode($switches);
                $data['main_content'] = 'switches';
                $this->load->view('includes/template',$data);
        }
}

我正在使用模板系统加载视图。模板文件如下所示:

I'm using a templating system to load my views. the template file looks like this:

<?php
        $this->load->view('includes/header');
        $this->load->view($main_content);
        $this->load->view('includes/footer');
?>

在header.php文件中,我有逻辑添加css文件,如下所示:

Inside my header.php file, I have logic to add css files like so:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="../../favicon.ico">
    <title>test app</title>
    <link href="../application/assets/css/bootstrap.min.css" rel="stylesheet">
    <link href="../application/assets/css/justified-nav.css" rel="stylesheet">
    <link href="../application/assets/css/dashboard.css" rel="stylesheet">
    <script src="../application/assets/js/ie-emulation-modes-warning.js"></script>
  </head>

关于我可能搞砸的任何提示吗?
我已经看了太久了。

Any tips on what I might be messing up? I've been looking at this too long.

编辑1

URL失败时的外观如下:

This is what the URL looks like when it fails:

http://localhost/testapp/index.php/application/assets/css/bootstrap.min.css

并且在工作时:

http://localhost/testapp/application/assets/css/bootstrap.min.css

推荐答案

为您的资源使用绝对路径。

Use absolute path for you resources.

< link href = / application / assets / css / bootstrap.min.css rel = stylesheet>

或使用base_url()函数:

or make use of base_url() function:

< ; link href =<?= base_url();?> application / assets / css / bootstrap.min.css rel = stylesheet>

但通常:

不要将资产放入应用程序文件夹。最好将资产文件夹放置在应用程序的根目录下,甚至更好地将公共文件夹与应用程序文件夹和系统文件夹分开,将资产移动到公共文件夹。 https://stackoverflow.com/a/32346618/5173560

Don't put your assets into application folder. Better place assets folder inside root of your app, or even better separate public from app and system folder, move assets to public folder. https://stackoverflow.com/a/32346618/5173560

这篇关于Codeigniter 3-缺少CSS文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆