HTML“链接href”如何从不同的文件夹中调用相同的文件?

时间:2012-05-02 20:08:52

标签: php html directory

这是我的根文件夹:

index.php
stylesheets(folder) --->main.css
includes(folder)    --->header.php
folder1  (folder)           --->page1.php

这是“header.php”的链接部分(来自includes文件夹):

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

这是index.php的一部分:

<?php include "includes/header.php"; ?>

这是page1.php的一部分(来自folder1):

<?php include "../includes/header.php"; ?>
问题是,当我打开index.php时一切正常。至于/folder1/page1.php,它看不到样式但看到header.php的内容。也就是说,它没有带来main.css。很可能,因为link href="stylesheets/main.css" rel="stylesheet" type="text/css"有任何帮助吗?

4 个答案:

答案 0 :(得分:4)

因为您从多个级别访问文件,所以应该使用绝对路径。

所以href="http://domain.com/stylesheets/main.css"href="/stylesheets/main.css"

但是当你在你的域名顶层时,这只能起作用(第二个,我推荐的那个)。

答案 1 :(得分:2)

强大的解决方案是使用绝对链接。一种方便的方法是使用中央配置文件。例如,创建一个包含

的文件config.php
<?php

    define('SITE_ROOT', 'http://www.yourdomain.com/');

?>

并在每个PHP文件(require_once('config.php');)中包含此文件。然后你可以写

<link href="<?php echo SITE_ROOT; ?>stylesheets/main.css" rel="stylesheet" type="text/css" />

始终会解析为您要引用的网址。当您网站的域名发生变化时,中央配置将允许您轻松更改它。

答案 2 :(得分:0)

我对你的文件夹结构感到困惑,但我理解正确。

尝试

href="../stylesheets/main.css"

答案 3 :(得分:0)

有时简单的方法是最好的方法:使用绝对路径!