php包含来自另一个目录的文件

标签 php include

这是一个结构示例:

/main
 /css
  style.css
 /include
  article1.php
  article2.php
 header.php
 index.php

在我的 header.php 中,我有以下 CSS 代码:

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

例如,在我的 index.php 中,第一行是以下内容:

<?php include 'header.php'; ?>

现在,一切正常。接下来,我将在 article1.php 文件中插入以下代码:

<?php include '../header.php'; ?>

内容(菜单和其他 html)显示正确,但 CSS 根本无法显示/识别。基本上发生的事情是头文件被包含但服务器不尊重目录父子关系。为了正确显示 CSS,我必须将 CSS 的 link rel 更改为 ../css/style.css,但如果我这样做了' 处理位于主目录中的文件。

我希望我把问题说清楚了。我究竟做错了什么?如何包含来自不同目录的文件并保留其中的链接?

最佳答案

在您网站的 <head>节,插入 a <base> elementhref属性。设置 href属性到您网站的基本 URL,所有相对请求都将通过该基本 URL 发送。

<base href="http://my-website-url.com/" />
<link rel="stylesheet" type="text/css" href="css/style.css" />

使用正确设置的 base标记,用户的浏览器将尝试从 URL http://my-website-url.com/css/style.css 加载您的样式表.

注意:这不仅会影响样式表,还会影响文档中的所有相关链接。

关于php包含来自另一个目录的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15683465/

相关文章:

php - 如何编辑我的查询,每个产品仅显示一张图片?

C++ 包含问题

javascript - 多个动态下拉选择菜单不起作用 - PHP MySQL Jquery

php - 如何创建我自己的登录页面而不是 simplesamlphp IDP 登录页面

php - 将包含多个变量的 URL 作为参数发送到另一个页面

c++ - 解决困难的不完整类型错误

c++ - cpp - 头文件包含错误

c++ - C++ 中的递归 header 包含错误

python /灰鲭鲨 : Script Tag not showing up from Sub Template when Loaded into Main Template via Ajax Call

php - 为什么下载所有邮件后程序无法停止?