我的 css 在我的本地 xampp 服务器上工作,而不是在我的网站上

Posted

技术标签:

【中文标题】我的 css 在我的本地 xampp 服务器上工作,而不是在我的网站上【英文标题】:My css works on my local xampp server and not on my website 【发布时间】:2015-02-08 03:09:50 【问题描述】:

我有一个website。我的CSS没有被应用到它。这些文件与我在本地的文件完全相同。这些在我自己的本地主机上工作。我在我的 css 文档中使用 php,所以文件扩展名为 .php

(我的css文档)main.php:

<?php
    header("Content-type: text/css; charset: utf-8");
?>

我在 main.php 中调用的索引文档:

<head>
    <meta charset="utf-8">
    <title>Chris Munroe</title>
    <link rel = "stylesheet" href = "css/normalize.css">
    <link href='http://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
    <link rel = "stylesheet" href = "css/main.php">

</head>

如果您点击我的关于页面,则会有另一个专门针对该页面的 css 文档。在网站上,您会看到它运行良好。这里有什么问题?你不能把php和css混在一起吗?我在 php/css 文档中使用该标题的位置是否重要?

【问题讨论】:

你为什么将你的css文件定义为php? 您应该将您的 div 引用 &lt;div id = back0&gt;&lt;div id = "back0"&gt; 等等等等,而不是使用 .php 作为样式表。 如果你想将你的 css 包含在一个 php 中,你可能想看看:***.com/questions/6315772/… 我在 css 中使用 php。这不是应该做的事吗? FireBug 无所不知:样式表 chrismunroe.pw/css/main.php 未加载,因为其 MIME 类型“text/html”不是“text/css”。 【参考方案1】:

正如 Dagon 指出的那样,即使您正在设置内容类型,您也需要执行此操作来强制执行它。 将 CSS 放在一个单独的文件夹中,然后

在该文件夹中创建一个*.htaccess 文件并添加以下内容:

AddHandler application/x-httpd-php .css

这应该对你有用

【讨论】:

只是为了让我知道我所说的是一个有效的解决方案,有什么理由反对? (虽然它不适用于 OP) 没有。您不应该添加此处理程序(这是一个非常糟糕的做法),因为您将把该文件夹中的所有 CSS 都视为 PHP。指定PHP头就够了。 @Raptor 这就是我提到单独文件夹的原因,如果这个 htaccess 在一个文件夹中,这真的是一个不好的做法吗? 是的,仍然是一个不好的做法。所有的 CSS 都应该放在一个集中的文件夹中。 您的声明有什么理由吗?还是一个被解释为不好的链接?【参考方案2】:

哇。这是因为 utf 是小写的。就是这样。

修复:

header("Content-type: text/css; charset: UTF-8");

您可以自己查看网站,现在一切正常......

【讨论】:

你可以接受你自己的答案,只是不能投票:) 应该是 Content-Type 只是要小心 @skv 您只能在问题打开 2 天后接受自己的答案

以上是关于我的 css 在我的本地 xampp 服务器上工作,而不是在我的网站上的主要内容,如果未能解决你的问题,请参考以下文章

SSL 证书在我的 localhost (xampp) 上工作正常,但不适用于 localhost:9001

Laravel 安全重定向过滤器在我的本地工作,但不在服务器上

为啥 xampp 服务器在我的本地服务器上生成错误?

为啥我的 CSS 在使用 xampp 的 localhost 中不能正常工作,但在本地或从 Netlify 站点打开相同的文件时工作正常?

无法在我的本地主机 (XAMPP) 上安装 Magento 2

运行 php3 本地主机