引用来自未知的更高目录的css样式表

时间:2011-07-01 17:22:57

标签: css stylesheet

我目前正在构建我的第一个基于PHP的网站。整个网站位于主目录:example.com

我希望用户可以通过访问例如example.com/page,example.com/another_page,example.com/directory/some_page等链接找到我网站的不同页面。

为此,我创建这些目录,并在index.php中添加以下php代码:

<?php
include("/home/user/domains/example.com/public_html/index.php");
?>

这很好用,页面包含在内。问题是样式表不是。它只适用于主文件夹。我尝试了这两个HTML片段:

<link href="Stylesheet.css" rel="stylesheet" type="text/css" />
<link href="/home/user/domains/example.com/public_html/Stylesheet.css" rel="stylesheet" type="text/css" />

但它们都不起作用。

这如何在HTML中工作,如何访问主目录?

提前致谢

3 个答案:

答案 0 :(得分:3)

css文件已下载并包含在客户端,而不是包含文件在服务器端的php include语句。< / p>

从客户角度来看,css的路径应该“有意义”,并且可能相对于public_html目录指定。也就是说,如果它直接驻留在public_html目录中,那么该行应该是

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

答案 1 :(得分:2)

浏览器无法查看public_html下的所有目录。 Web服务器为浏览器提供文档根。您需要仅使用/来引用它:

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

还要考虑使用mod_rewrite而不是在任何地方创建目录和PHP文件。我想你会发现它更易于维护。

答案 2 :(得分:1)

这是服务器端访问的绝对路径:

<?php
include("/home/user/domains/example.com/public_html/myDirectory/Stylesheet.css");
?>

但是,您希望从Web服务器进行访问。 Web服务器的绝对路径如下,其中/是Web服务器的根目录,myDirectory是根目录下的目录位置:

<link href="/myDirectory/Stylesheet.css" rel="stylesheet" type="text/css" />