2017-07-11 17 views
0

私は様々な他のPHPファイルに含めるPHPファイルを作成しようとしていますが、CSSファイルへの参照を追加しようとしていますが、私のディレクトリ構造に問題があります。私は3つのフォルダ、管理者、含まれているとスタイルをルートフォルダからオフ。 CSSファイルはスタイルフォルダにあり、ページにインクルードするファイルはインクルードフォルダにあります。私の問題は、CSSファイルが見つかるようにする方法を見つけ出すことができないということです。現在のところ、ルートに基づいてCSSファイルの場所を指定すると、ファイルはサブフォルダのページから見つからないでしょう。私は$_SERVER['SERVER_NAME']$_SERVER['DOCUMENT_ROOT']を含むオンラインで見つけた解決策を試してみましたが、私は何が間違っているのか、それ以外に何をしようとしているのか分かりません。私はPHPに全く新しいので、どんな助けも大歓迎です。以下は私のコードです。ありがとうCSSでファイルを参照する方法

<head> 
<?php 
    $server = 'http://'.$_SERVER['SERVER_NAME']; 

?> 
<!doctype html> 
<html lang="en"> 
<head> 
     <meta charset="UTF-8"> 
     <meta http-equiv="X-UA-Compatible" content="ie=edge"> 
     <title>Document</title> 
     <link rel="stylesheet" href="<?php echo $server . '/2025/styles/reset.css' ?>"; 
     <link rel="stylesheet" href="<?php echo $server . '/2025/styles/normalize.css' ?>"; 
     <link rel="stylesheet" href="<?php echo $server . '/2025/styles/characters.css' ?>"; 

</head> 

答えて

0

ここにいくつかの問題があります。

最初は、$_SERVER['SERVER_NAME']を使用しているということは、あなたのサーバー構成に依存しているということです。代わりに$_SERVER['HTTP_HOST']を使用する方が理にかなっています。 $_SERVERオプションのリストはhereです。

2番目の問題は、HTMLが有効でないことです。 リンク要素を適切に閉じているわけではありません。あなたは間違ってセミコロンを使用している、彼らは以下のようになります。

<link rel="stylesheet" href="<?php echo $server . '/2025/styles/reset.css' ?>" /> 
<link rel="stylesheet" href="<?php echo $server . '/2025/styles/normalize.css' ?>" /> 
<link rel="stylesheet" href="<?php echo $server . '/2025/styles/characters.css' ?>" /> 
+0

完璧に作業しました、ありがとうございました! –

0

$server変数を削除して、相対的なルートURLを使用しています。ファイルのパスが/で始まる場合は、ドメインの直後から開始し、そのパス構造の下に移動することを意味します。例えば:それはhttp://example.com/styles/reset.cssでファイルを参照するドメインexample.com

<link rel="/styles/reset.css"> 
  • は、このHTML要素を考えます。

  • whatever.comのドメインでは、ファイルはhttp://whatever.com/styles/reset.cssです。

ファイルのURLは、URLの「ルート」と「相対的」です。

関連する問題