拒绝应用{filename}中的样式,因为它的MIME类型('text / html')不是受支持的样式表MIME类型

时间:2019-03-11 22:41:38

标签: javascript html css express ejs

我有一个与Express一起用于本地主机Web服务器的index.ejs文件,并且出现4种2类错误: Errors 这是我的代码:

<html>
<head>
    <title>Home</title>
    <!-- <link rel="stylesheet" type="text/css" href="styles/main.css"> -->
    <link rel="stylesheet" type="text/css" href="styles/mobile.css">
    <link rel="icon" href="public/styles/images/icon.png">
</head>
<style type="text/css">
@import url("styles/main.css");
</style>
<body>
    <nav>

    </nav>
    <main>

    </main>
    <footer>

    </footer>
    <script type="text/javascript" src="scripts/javascript/main.js"></script>
    <script type="text/javascript" src="scripts/javascript/mobile.js"></script>
</body>

我尝试在与index.ejs文件相同的目录中制作测试CSS和JavaScript文件,但这些文件也出现错误。当我将文件类型更改为index.html时,没有任何有趣的错误。如果有人可以告诉我原因,那将会很有帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

我从未见过@import url("styles/main.css");方法,所以我不能说它不起作用。

通常,当css / js路径中有错误,或者您没有正确配置public上的app.js文件夹时,就会收到该错误。

请确保您拥有app.use(express.static('public'));,并且有一个名为public的文件夹,该文件夹包含以下文件夹:cssjsimages。将所有js / css / images放在这些文件夹中。

然后在您的index.ejs上更改以下内容:

//to reference a css file:
<link rel="stylesheet" src="/css/yourFile.css">

//to reference a js file:
<script href="/js/yourFile.js"></script>

//to reference an image:
<link rel="icon" src="/images/yourImage.png">