在php中链接css文件

时间:2014-12-30 13:10:30

标签: javascript php html css

我是php的新手,我正在处理一个项目,我正面临着链接css和js文件的一些问题。 现在,当项目执行时,第一个index.php加载(位于根目录中),其中包含home.php,其中的所有内容都正确执行。 但是一旦你点击“主页”上的“关于”链接,该页面就被重定向到about.php(位于Presentation / about.php内),这里css和js链接失败...... 。
在执行index.php时,它成功地获取了css链接(链接如下)
<link href="css/bootstrap-theme.min.css" rel="stylesheet">
但后来当页面被重定向到about.php时,它期望链接 <link href="../css/bootstrap-theme.min.css" rel="stylesheet">
我正在使用这些链接的公共文件,我保留header.php中的所有链接(位于Presentation / Template / header.php)
我还在config.php(位于inc / config.php)中定义了所有路径 我在config.php中定义了如下路径

// SITE_ROOT contains the full path to the RichTongue folder
define('SITE_ROOT', dirname(dirname(__FILE__)));

// Application directories
define('PRESENTATION_DIR', SITE_ROOT . '/Presentation/');
define('TEMPLATE_DIR', PRESENTATION_DIR.'Template/');
define('BUSINESS_DIR', SITE_ROOT . '/Business/');
define('CSS_DIR', SITE_ROOT. '/css/');
define('FONT_DIR', SITE_ROOT . '/fonts/');
define('IMAGE', SITE_ROOT . '/images/');
define('JS', SITE_ROOT . '/js/');


所以我尝试以下列方式链接css
<link href="<?php echo CSS_DIR ?>bootstrap.min.css" rel="stylesheet" >
现在上面的代码给了我一个chrome错误
Not allowed to load local resource: file:///C:/xampp/htdocs/RichTongue/css/bootstrap.min.css home.php:13


现在上面错误中的路径(file:/// C:/xampp/htdocs/RichTongue/css/bootstrap.min.css)是正确的,但它没有加载文件并给出错误(上面指定的错误)
问)我该怎么办?什么是在PHP中链接css和js文件的正确方法? 需要帮助

5 个答案:

答案 0 :(得分:0)

使用绝对路径链接您的css和其他资源似乎是一个简单的解决方案。

绝对路径来自您网站的根目录:C:/xampp/htdocs/RichTongue

而不是file:///C:/xampp/htdocs/RichTongue/css/bootstrap.min.css您可以使用/css/bootstrap.min.css

所以你必须修改

define('CSS_DIR', SITE_ROOT. '/css/');

define('CSS_DIR', '/css/');

与其他资源(js,font等)相同

结果如下:

<link href="/css/bootstrap-theme.min.css" rel="stylesheet">

答案 1 :(得分:0)

假设您有一个名为css的文件夹,您可以使用这样的真实路径:

define('CSS_DIR', realpath(dirname(__FILE__).'/css'));

然后你将使用这样的常量路径:

echo CSS_DIR."/style.css"; 

答案 2 :(得分:0)

为SITE_ROOT设置URl路径

如果你的项目路径是C:/xampp/htdocs/RichTongue/css/bootstrap.min.css

所以用下面的行改变

define('SITE_ROOT', 'http://localhost/RichTongue');

答案 3 :(得分:0)

尝试像这样使用它:

$SITE_FOLDER_NAME = "demo/";
define('SITEURL', 'http://'.$_SERVER['SERVER_NAME'].'/'.$SITE_FOLDER_NAME);
define('SITEURL_CSS', SITEURL.'css/');

答案 4 :(得分:-2)

./ assets / CSS / filename.css 为我做了工作。