CSS不再适用于其他服务器

时间:2013-09-30 13:45:07

标签: php css

目前我正在使用音乐网站并遇到css文件问题。

在本地服务器或公司的测试服务器( UNIX )上它工作正常,但当我将文件上传到另一台服务器(Windows)上时,CSS似乎没有效果

当我使用Firebug时,它表示没有定义CSS。如果我使用View Source并单击CSS文件链接,它似乎工作正常。

另一个问题:如果我在头文件中回显任何东西,那么CSS正常工作;如果我使用内联CSS代码也一样。可能是什么问题?

这是我的头文件代码:

<!DOCTYPE html>
<html lang="en">
<head>
<title>xyz</title>
<base href="<?php echo HTTP_PATH; ?>/">
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="css/style.css">

这是我的老帖子,我得到了这篇文章的最佳答案:

您的服务器正在为CSS提供错误的内容类型。当我查看网络选项卡时,.css文件将作为text / html而不是text / css提供。这意味着浏览器不会将其解释为样式表,而是将其解释为html文档,自动将内容包装在标记中,因为它认为它已丢失。这导致所有CSS被忽略。

但是当我在浏览器上打印任何字符时,会混淆那个答案,那么服务器如何将.css文件作为text / css提供。

任何人都可以解释一下吗?

2 个答案:

答案 0 :(得分:3)

您的服务器正在为CSS提供错误的内容类型。当我查看网络标签时,.css文件将作为text/html而不是text/css投放。这意味着浏览器不会将其解释为样式表,而是将其解释为html文档,自动将内容包装在<html>标记中,因为它认为它已丢失。这导致所有CSS被忽略。

答案 1 :(得分:0)

检查文件编码。 尝试将文件音译为utf-8 - 某些符号无法在Windows服务器中表示,例如unix Carriage符号(返回/输入)。 它可能会破坏你的代码...