我必须从名为resources/includes/header-test.php
的子文件夹中调用subfolder/mypage.php
。这是通过以下代码解决的,但给了我一个新问题。
<?php include __DIR__.'/../resources/includes/header-test.php'; ?>
现在问题是当我转到mypage.php
时没有调用css。那我怎么能调用我的CSS,所以它在根目录和子文件夹中的php文件中工作?
testProject / index.php - &gt; css正在运作
testProject / subfolder / mypage.php - &gt; css无效
标题-test.php的
<html>
<head>
<link href="css/style.css" rel="stylesheet" />
</head>
<h1>THIS IS THE HEADER FROM INCLUDE</h1>
的index.php
<?php include 'resources/includes/header-test.php' ?>
<body>
<h2 class="font">THIS IS THE INDEX BODY</h2>
<p>The css works on this page when I link to the css like this in the header:</p>
<p>link href="css/style.css" rel="stylesheet" </p>
<a href="subfolder/mypage.php">MyPage subfolder link</a>
</body>
</html>
mypage.php
<?php include __DIR__.'/../resources/includes/header-test.php'; ?>
<body>
<h2 class="font">THIS IS THE BODY OF SUBFOLDER/MYPAGE.PHP</h2>
<p>The css does not work when I link like this in the header</p>
<p>link href="css/style.css" rel="stylesheet"</p>
</body>
</html>
的style.css
.font {
color: red;
}
答案 0 :(得分:3)
这是css/style.css
路径相对于文件的问题。您应该在前面添加/
,以告诉页面从Web目录的“根”加载资产。简而言之,它应该是/css/style.css
,这将适用于两个页面。
您应该注意,Web目录的根目录与文件服务器根目录不同。如果您在本地开发并拥有一个位于/path/to/your/website/
的index.html等文件,并且您在浏览器中使用/path/to/your/website/index.html
进行查看,则会破坏资产的路径。