2

PHP を使用して Web サイトを作成しようとしています。外部の CSS ファイルを使用しています。

私はhead.phpファイルを持っています

<title>TITLE</title>
<link rel="stylesheet" type="text/css" href="style/style.css" />

これは私のindex.phpファイルです

$server = $_SERVER['DOCUMENT_ROOT'];
include $server.'/head.php';

それは正常に動作しますが、child/index.php のような子ディレクトリに他の index.php ファイルを作成しようとすると、css ファイルが見つからないと言われました。head.php を次のように変更しようとしました

<link rel="stylesheet" type="text/css" href="<? echo $server ?>/style/style.css" />

それもうまくいきません。

この問題を解決するにはどうすればよいですか?

4

3 に答える 3

3

cssファイルのURLがhttp(s?)://www.example.com/style/style.css

次に、次を使用します。

<link rel="stylesheet" type="text/css" href="/style/style.css" />
于 2012-09-06T03:12:34.440 に答える
1

PHP はサーバー側であるため、ドキュメント ルートを使用すると、Web サーバーのルートが参照されます。ただし、クライアント側で CSS ファイルを読み込もうとしています。したがって、href 属性の値は現在のドメインに対して相対的です (/ はサーバーのルートを参照するのではなく、ドメインのルートのみを参照します)。

于 2012-09-06T03:12:27.737 に答える
0

スタイルシートが相対パスを使用しています。サブディレクトリにあることを反映するように変更することで、問題を解決できます。

../style/style.css

これ..により、HTML が解釈されている場所から 1 つ上のディレクトリに移動します。

もう 1 つのオプションは、絶対パスを使用することです。http://www.example.com/style/style.css

于 2012-09-06T03:12:56.940 に答える