我试图在包含所有CSS链接信息的头文件中链接一个单独的php文档,这样如果我想更改网站的设计,我只需要在一个位置更改css路径(特别是对于各种配色方案)当我添加更多方案时,我可以将它们放在这个文件中的switch语句中,而不是遍历每一页.
我正在尝试编写代码,以便无论在哪个服务器(我的本地测试服务器或远程站点服务器)上运行它都可以工作,而无需更改任何路径信息.
从我正在阅读的内容看起来似乎$_SERVER['DOCUMENT_ROOT']是找到网站基本文件夹路径的最佳方式,这样我就可以找到服务器文件夹/ css文件,无论页面文件位于何处.
这是我如何设置它的一个例子:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<!--Meta Information-->
<!--CSS Info-->
<?php
require_once("styles/cssstyle.php");
?>
<title></title>
</head>
<body>
<!--pushes site down from top of screen -->
<div id="topmargin"></div>
<!-- sets div for site content (puts in middle) -->
<div id="_body">
<div id="banner">
<div class="logo"></div>
<div class="text"></div>
<div class="bannerstrip"></div>
</div>
<!--portion for site navigation-->
<div id="navigation">
<ul class="navlinks">
<li><a href="index.php">home</a></li>
</ul>
</div>
<!--Holds all site usable/readable content-->
<div id="leftwindow">
</div>
<div id="rightwindow">
</div>
<div id="rightwindow">
</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
CSS php文件是这样的:
<?php
echo "<link rel='stylesheet' type='text/css' href='styles/default.css'/>";
echo "<link rel='stylesheet' type='text/css' href='" . $_SERVER['DOCUMENT_ROOT'] . "styles/basicblue.css'/>";
echo "<link rel='stylesheet' type='text/css' href='" . $_SERVER['DOCUMENT_ROOT'] . "styles/forms.css'/>";
echo "<link rel='stylesheet' type='text/css' href='" . $_SERVER['DOCUMENT_ROOT'] . "styles/loginform.css'/>";
echo "<link rel='stylesheet' type='text/css' href='" . $_SERVER['DOCUMENT_ROOT'] . "styles/newscontent.css'/>";
?>
Run Code Online (Sandbox Code Playgroud)
我是肯定的DOCUMENT_ROOT被设置到正确的位置,但我的样式没有出现.我错过了什么吗?是否有更可靠的方法来设置它?
Pat*_*k M 10
根据我的经验,回应Mike上面所说的,$_SERVER['DOCUMENT_ROOT']只是在服务器上查找文件的最佳选择.如果您需要php来包含或需要某些东西,请找到服务器端路径DOCUMENT_ROOT.
但是,css文件是客户端.它们包含在相对网站路径中.如果你只是这样做
<link rel='stylesheet' type='text/css' href='/styles/newscontent.css'/>
Run Code Online (Sandbox Code Playgroud)
/href中的开头告诉浏览器始终从域的根目录中检索它:http://yourdomain.com/styles/newscontent.css.
您必须使用$_SERVER["DOCUMENT_URI"]而不是$_SERVER["DOCUMENT_ROOT"],如下所示:
echo "<link rel='stylesheet' type='text/css' href='" . dirname($_SERVER['DOCUMENT_URI']) . "/styles/basicblue.css'/>";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23779 次 |
| 最近记录: |