0

今日、コードイグナイターの使用を開始しましたが、問題が発生しました。問題は、css ファイルをデフォルト ビューにリンクしたいことです。私の試みは、cssファイルをルートのルートに配置することでした。だからこんな感じ

-Root
--application
--system
--styles
----main.css
--index.php

次に、私の見解では、次のように同じフォルダーにあるふりをして、css ファイルをリンクします。

<link href="styles/main.css" rel="stylesheet" type="text/css">

次のようにデフォルトのコントローラーにアクセスすると、http://localhost/index.php動作します!! しかし、このようにアクセスするとhttp://localhost/index.php/home/index機能しません。このパスを使用してcssファイルにアクセスしようとしますhttp://localhost/index.php/styles/main.css

これを修正するにはどうすればよいですか、また、これを行う正しい方法は何ですか?

4

5 に答える 5

2

これを試して

<link href="<?php echo base_url() ?>styles/main.css" rel="stylesheet" type="text/css">

2.0 より前のバージョンの codeigniter を使用している場合はbase_urlconfig.php

...

またはベースタグを指定できます

<base href="<?php echo base_url()?>">

すべての相対パスには接頭辞が付けられますbase_url

現在のビューでのみ機能します(テンプレートビューに追加することをお勧めします)

...

またはこれを確認してください

于 2013-07-30T09:30:48.653 に答える
0

Maarty が答えたように、次を使用する必要があります。

<link href="<?php echo base_url() ?>styles/main.css" rel="stylesheet" type="text/css">

毎回これを行う必要があるかどうかに関する 2 番目の質問については、Comper Template Parserを確認してください。これは非常に優れており、セットアップが非常に簡単です。データ変数から疑似変数を作成します-私が行うのは、スタイル、javascript、およびその他の変数をパーサーファイル内に追加することです。たとえば、次のようなものです。

array('styles' => base_url() . '/stylesheets/',
      'scripts' => base_url() . '/javascripts/',
      'something' => base_url() . '/something-awesome/');

これをテンプレートファイルに入れることを許可します:

<link href="{styles}/main.css" rel="stylesheet" type="text/css">
<link href="{styles}/other.css" rel="stylesheet" type="text/css">

<script src="{scripts}/jquery.js"></script>
<script src="{scripts}/amazing.js"></script>

<img src="{something}/something.jpg"/>

Comper Template Parserを試してみてください。これは本当にすばらしいサービスです。

于 2013-07-30T13:39:43.860 に答える
0

site_url() の代わりに user base_url()

于 2013-07-30T09:32:57.263 に答える
0

これを試して

<link rel="stylesheet" type="text/css" href="<?php echo base_url('styles/main.css')?>" />

config.php ファイルで base_url() を定義します

于 2013-07-30T09:48:17.537 に答える