从本地文件远程css不起作用?

时间:2011-06-12 12:13:09

标签: html css

我是CSS的总菜鸟。

我本地和远程都有一个css文件。我在地址栏中加载了一个本地html文件(即c:\ temp \ index.html)。我用firefox。

该文件将'html','body'和2 divs的高度设置为100%(高度:100%)

当我链接到本地​​css文件时,一切正常。当我链接到远程文件时,它看起来像高度样式(至少)不起作用。我试图在javascript中获取body元素的offsetHeight属性时看到了这一点。

这可能是什么原因?

我使用以下方式链接到远程站点:     <link rel="stylesheet" media="screen, projection" href="https://raw.github.com/SirPepe/Pik5/master/assets/css/pik5.css">

(本地文件的doctype是html)

要测试:克隆https://github.com/SirPepe/Pik5,请加载本地index.html文件。然后更改它,以便<link rel="stylesheet" media="screen, projection" href="assets/css/pik5.css">变为<link rel="stylesheet" media="screen, projection" href="https://raw.github.com/SirPepe/Pik5/master/assets/css/pik5.css">。重新加载以查看幻灯片不再正确设置

注意:使用firebug我看到css文件加载

2 个答案:

答案 0 :(得分:5)

因此,在进行一些挖掘后,看起来好像您的CSS文件正在链接,但实际上并未应用任何样式。这让我相信还有其他事情要发生。我通过验证器运行你的html并没有发现具体的,但是当通过验证器运行你的github css时,我收到了这个回复:

I / O错误:未知的mime类型:text / plain

看起来github发送了一个Content-Type HTTP标头,它为您的样式表文件显示text / plain而不是text / css。您可以在html文档中为该样式表链接简单地定义type="text/css,但我不确定如何解决此问题,因为您无法访问其mime类型设置。

在此处查看类似问题:Add mime type to HTML link

答案 1 :(得分:1)

戴夫的帖子确实描述了这个问题。这是解决方案。您需要使用http://rawgithub.com代替http://raw.github.com。是的,没错,只需放下.

问题是Github没有使用正确的MIME类型提供其“原始”文件,以允许您热链接它们。输入Ryan Grove,他创建了rawgithub.com站点来解决这个问题。当你点击它的服务器请求一个文件时,它将从Github的服务器获取该文件,并为你纠正MIME类型。

警告:它不适合生产使用。仅用于演示和开发。