-1

我刚刚完成了我网站的 IA(信息架构)的工作。根据我的 IA,我在我的根目录中创建了我的根文件夹以及我的文件夹和文件。这就是它的映射方式。我有一个名为“root”的根文件夹,在我的根文件夹中有一个“index.php”和一个“style.css”文件。我的根文件夹中有来自“docs”、“images”和“nav”的其他三位导演。在 nav 中,我有将编码导航栏上所有链接的文件。

                                    Root
                        /     |      |       |       \
                     docs  images   nav   index.php  style.css      
                                     |
        About Reports Documents Checklists LicenseTools Presentations SWRelease

我计划在索引页面上创建我的模板,并在我创建的每个页面中使用相同的模板。因为我会将我的行添加到让我们说关于页面。style.css 文件和 About.php 文件不在同一个文件夹中,那么如何链接它以使它们在同一个文件夹中?或者我的代码是否会自动尝试找到它,无论它在根文件夹中的什么位置?

4

3 回答 3

2

就个人而言,我会将所有文件保留在根目录中的 nav 目录中,但这是我自己的偏好。这是您需要输入的内容:

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

注意 中的前导斜杠/style.css。这表明引用是绝对的,即相对于您网站的根目录。这适用于您网站上的任何 HTML 或 PHP 文件 - 无论它位于文件层次结构中的什么位置。

于 2013-07-25T20:41:35.030 回答
2

没有什么可以阻止您在 <link> 标签的href属性中使用绝对路径,并且此类路径是从文档根目录解析的。因此

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

将正确解析为样式表文件,无论 <link> 标记出现在哪个页面中。

于 2013-07-25T20:41:55.850 回答
1

根据评论更新:

最好的方法是 Aaron Miller 回答:

<link rel="stylesheet" href="/style.css">

这将解决加载style.css到根目录中。

但是,如果您正在为您的站点加载单个样式表(或一组静态样式表),我建议始终从静态模板调用样式表。尽可能避免重复代码是一种很好的做法。

因此,在您的情况下,如果您的项目<head>永远不会改变,那么将所有这些项目包含在一个header.php文件中是个好主意。这样,如果您必须添加任何内容<head>(例如添加第二个样式表),您只需更改一个文件中的代码,而不是更改每个模板。

您可以使用 PHP 包含您的头文件,require_once例如:

<?php require_once 'path/to/header.php'; ?>
于 2013-07-25T20:41:40.257 回答