4

base_url() が CSS ファイルで機能しない...

ここに私のphpがあります:

<link rel="stylesheet" type="text/css" href="<?=base_url()?>css/style.css"/>
<body>
</body>

ここに私の css/style.css があります:

body {
  background:#356aa0 url(<?=base_url()?>img/background.png) repeat-x;
  color:#fff;
}

テキストの色が白に変わりますが、画像が表示されません... url(../img/background.png) を使用すると表示されます... しかし、url localhost/project/index. php/control/function/var1/var2、表示されません...

解決しました、ありがとうございました... :]

私はこのようなビューフォルダでphpファイルを作成します:

<?php header("content-type: text/css"); ?>

body {
    background:url(<?=base_url()?>img/background.png);
}

そして、コントローラーで関数を使用して作成したphpファイルをロードし、それをリンクします:

<link type="text/css" rel="stylesheet" href="<?=base_url()?>control/style.php"/>

仕事です、みんなありがとう...

4

7 に答える 7

6

このようにすればいい

ファイルの構造

myapp/
    application/
    system/ 
    css/
    img/

そしてcssにこれを書きます

body {
  background:#356aa0 url(../img/background.png) repeat-x;
  color:#fff;
} 

そして今それを呼び出します

<link rel="stylesheet" type="text/css" href="<?=base_url()?>css/style.css"/>

それが標準的なやり方です。また、css は動的ではないため、使用する php コードについて心配する必要はありません。回答で提示した構造は、確実にスタイルを正しく使用し、画像をロードします。

于 2013-02-28T07:00:39.143 に答える
2

CSS ファイルが PHP ファイルとして解析されません。本当にそのようなことをしたい場合は、ファイルの名前をstyles.php

ページを開いて追加

header("content-type: text/css");

これにより、ページがテキストベースの CSS ファイルとして扱われるようになります。次に、残りのCSSを次のように簡単にエコーできます

echo "
body {
....
....
";

base_url()アクセスできない問題を修正するにはstyles.php、セッション変数を設定してそれを維持します。これindex.phpを codeignitor に保持できます。

$_SESSION['base_url'] = base_url();

今、これを内部で使用しますstyles.php

background: url("<?php echo $_SESSION['base_url']; ?>"/../../some.jpg");
于 2013-02-28T06:57:42.647 に答える
2

CSS ファイルから base_url() を取得します。それは問題を解決するでしょう。PHP コードを CSS ファイルに入れることはできません。

于 2013-02-28T06:58:07.240 に答える
0

フォルダ構造が次の場合:

YourAppFolder/
    application/
           public/
               css/
               img/
         system/

次に、これをビューで使用します。

<link rel="stylesheet" type="text/css" href="<?=base_url()?>public/css/style.css"/>

cssではこれを画像に使用します:

background:#356aa0 url(../img/background.png) repeat-x;
于 2013-02-28T07:33:32.250 に答える
0

またはあなたが書くことができます...

 <link rel="stylesheet" type="text/css" href="<? echo base_url('your css file from base url') ?>/>

これはあなたの外部CSSファイルです

    body {
  background:url(<? echo base_url('your image path from base url')?>) repeat-x;
  color:#fff;
}
于 2014-10-06T17:21:02.847 に答える