【问题标题】:CSS nor recognised as CSS fileCSS 未被识别为 CSS 文件
【发布时间】:2017-02-19 21:15:33
【问题描述】:

在建立我的网站一段时间后,我想看看我是否可以将它上传到我的域,看看它是否可以从网络上运行。

现在我的 css 文件出现了这个错误: 资源解释为样式表,但使用 MIME 类型 text/html 传输:“http://www.benny-water.com/Mainscss2.css

我已经连续搜索了 3 个小时,但没有找到解决方案。如果我理解是我的服务器 (OVH) 错误地将 css 文件解释为 html 或文本文件,但我不知道在哪里进行更改。

我的 css 文件代码如下所示:

<head>
    <title> Benny Water </title>
    <link rel="stylesheet" type="text/css"  href="Mainscss2.css"> </link>
    <link rel="stylesheet" type="text/css" href="/style/Css3.css" />
    <link rel="stylesheet" type="text/css" href="style/Grid.css" />
    <link rel="stylesheet" type="text/css"  href="https://fonts.googleapis.com/css?family=Oxygen"/>
    <link rel="stylesheet" type="text/css"  href="https://fonts.googleapis.com/css?family=Muli"/>

    <link rel="stylesheet" type="text/css" ng-href="js/Jportfolio/css/bootstrap.min.css" />
        <link rel="stylesheet" type="text/css" ng-href="js/Jportfolio/css/jportilio.css" />
        <link rel="stylesheet" type="text/css" ng-href="js/Jportfolio/css/jportilio_style_default.css" />

    <script type="text/javascript" src="js/Jportfolio/js/jquery-1.11.2.min.js"/>
        <script type="text/javascript" src="js/Jportfolio/js/bootstrap.min.js"/>
        <script type="text/javascript" src="js/Jportfolio/js/jportilio.js"/>

    <script src="http://code.jquery.com/jquery-latest.min.js"/>

</head>

谢谢你的帮助:)

【问题讨论】:

  • 你的.htaccess文件一定有问题
  • 我的 .htaccess 看起来像这样,RewriteEngine on # 不重写 css、js 和图像 RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$ [ NC] RewriteRule ^abc/(.+)/(.+)/abc.php?id=$1&name=$2 [L] # 从根 RewriteRule 重写 css、js 和图像 ^abc/[^/]+/[ ^/]+/(.+)$ $1 [L]
  • 我已经为此标记了一个重复项。听起来像是服务器配置问题;如果您有权访问您的服务器配置,那么您将能够按照说明进行操作。如果您不这样做,那么您可以在本地为您的网站配置它,但理想情况下,您应该与您的托管服务提供商联系以解决问题。
  • @BennyWater — 您是从 PHP 生成 CSS 吗?我的 mod_rewrite fu 无法解码您的评论。

标签: html css server


【解决方案1】:

查看您的路径,您的 CSS 文件所在的位置似乎不匹配。

<link rel="stylesheet" type="text/css" href="Mainscss2.css"> </link> <link rel="stylesheet" type="text/css" href="/style/Css3.css" /> <link rel="stylesheet" type="text/css" href="style/Grid.css" />

/style/Css3.css 在您的路径前面有一个/,但style/Grid.css 没有。

您的Mainscss2.css 链接也被错误关闭。我会删除 &lt;/link&gt; 并用 /&gt; 关闭标签,而不是为了代码的一致性。

【讨论】:

  • 这仅陈述了与 Nihvel 尝试回答相同的假设,但没有回答问题
  • 建议路径修复的原因是确保它们都是正确的。无法再通过描述中的 URL 访问导致错误的文件。但通常当解释器读取 CSS 文件并尝试渲染它时。由于文件中某处的 CSS 错误,浏览器返回错误 MIME type text/html。如果仍然可用,我可以帮助调试文件是否有错误?
【解决方案2】:

.css 文件必须放在 &lt;head&gt; 标签内,而 .js 文件必须放在 &lt;body&gt; 标签内。这是一条规则,但当它们都在&lt;head&gt; 内时,它显然也有效。

关于你的.css的路径,你确定是正确的吗?

<link rel="stylesheet" type="text/css"  href="Mainscss2.css"> </link>
<link rel="stylesheet" type="text/css" href="/style/Css3.css" />
<link rel="stylesheet" type="text/css" href="style/Grid.css" />

3 .css 有 3 种不同的路径

使用这个方案:

/var/www/mywebsite/index.php
/var/www/mywebsite/images/favicon.ico
/var/www/mywebsite/style/css/mytheme.css
/var/www/mywebsite/style/css/images/imagesUsedBymytheme.png
/var/www/mywebsite/style/js/myscript.js

当然要相应地修改它,如果你是 index.php,你会想用这个代码链接你的 .css:

<link rel="stylesheet" href="style/css/mytheme.css" type="text/css" >

编辑: &lt;link&gt; 是单个标签,你可以把它当作&lt;link rel="" href"" &gt; 使用

【讨论】:

  • 我们可以停止否决这个答案吗?代码充满了错误。 &lt;script&gt; 想要关闭 &lt;/script&gt; 标签。如果您像&lt;script /&gt; 一样关闭它,它将无法正常工作。我认为您无法运行代码,因为代码很脏。
  • .css 文件必须放在 head 标签内——没错,但问题表明它是,所以这无关紧要。
  • body 标签中的 .js — False。 JS可以走在头上。
  • 关于你的.css的路径,你确定是正确的吗? — 该问题描述了浏览器发出的警告。它并不是说没有应用 CSS。没有任何迹象表明路径是错误的。
  • “问题在于使用了错误的代码”——不可能。错误的 HTML 不能给出问题中描述的症状。
猜你喜欢
  • 2010-10-03
  • 1970-01-01
  • 1970-01-01
  • 2015-12-12
  • 2021-06-28
  • 2021-12-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多