【问题标题】:Embedded page in higher directory not using stylesheet更高目录中的嵌入页面不使用样式表
【发布时间】:2019-08-02 00:11:44
【问题描述】:

我有一个嵌入了来自更高目录的 HTML 文件的页面。文件的元素成功加载,但是元素的样式没有。 以下是文件 base.php,这是我尝试使用样式加载的页面。文件 header.php 是链接到样式表的文件。

<?php
    require "../header.php";
    require "sidebar.php"
?>
    <main>
        <h1>Test
    </main>    

下面是目录布局:

media
-styling
--style.css

panel
-base.php
-sidebar.php

header.php
index.php

查看终端,在加载页面时,它试图从面板目录中获取 css,但它没有被引用为在那里。

[Fri Aug  2 00:21:33 2019] [::1]:54765 [404]: /panel/media/styling/style.css - No such file or directory

我不确定我是否引用了错误的内容,或者是否不可能。

【问题讨论】:

  • 在 header.php 中给出样式表的绝对路径,即&lt;link rel="stylesheet" type="text/css" href="/media/styling/style.css" media="screen"&gt;
  • 这篇文章可能会有所帮助:PHP include best practices question.
  • @tim 这解决了我的问题。
  • @showdev 看看这个,好像有用。

标签: php html css


【解决方案1】:

尝试给 css/js 文件一个绝对路径。

例如,您可以在网站的 root 中创建一个 config.php 文件并添加以下行:

$aURL = __DIR__."/"; // for absolute URL (give: D:\xampp\htdocs/)
$wURL = "http://$_SERVER[HTTP_HOST]/"; // for other links, for example to another page in your website (give: http://localhost/)

不要忘记将它包含在页面的开头。另外,尝试require 仅对页面必要的东西,例如数据库连接,而不是页脚、导航栏等。

如果您将其上传到您的网络服务器,这两个变量都会发生变化。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 2018-01-03
    • 2019-03-22
    • 2014-01-12
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多