PHP网站 - 在子目录中加载样式表

时间:2014-09-12 06:16:31

标签: php html css html5

我正在使用此目录结构构建基于PHP的站点

  

的index.php

     
    

css

         
      
          
  • 的style.css
  •       
  • bootstrap.css
  •       
    
         

包括

         
      
          
  • 的header.php
  •       
  • footer.php
  •       
    
         

自行车

         
      
          
  • road.php
  •       
  • mountain.php
  •       
    
  

问题

所以我正在开发 road.php ,我显然需要能够链接到 style.css bootstrap.css ,但是当我在 road.php 的开头声明要包含 header.php footer.php 时,就好像它一样找不到样式表,网站恢复到默认的20世纪90年代外观。

我还发现页面上任何形式的链接都加载了404.我只是刚开始使用PHP,因为我的网站需要更多功能,但我似乎无法理解超级基本的东西。

我只是不知道该怎么做,我发现自己背弃了整个PHP语言。

提前感谢你,

Stu:)

1 个答案:

答案 0 :(得分:2)

我无法确定header.php的实际内容(特别是导入样式表的部分),但听起来您使用的是样式表的相对路径。像<link rel="stylesheet" type="text/css" href="css/style.css" media="screen" />这样的东西。这适用于index.php,但由于其他页面位于子文件夹bikes内,因此他们将在yoursite.com/bikes/css中查找CSS文件。

解决方案是提供绝对路径。像这样:

<link rel="stylesheet" type="text/css" href="http://yoursite.com/css/style.css" media="screen" />

这样,如果页面位于子文件夹(或子文件夹的子文件夹)中并不重要 - 它将始终在正确的位置查找CSS文件。

如果您使用多个域名,或者由于某些其他原因您无法对域名进行硬编码,您也可以在路径前加一个斜杠(/):

<link rel="stylesheet" type="text/css" href="/css/style.css" media="screen" />

此路径相对于网站的根目录,而不是当前目录。