CSS不适用于具有多个参数的URL(/ word / apple不起作用)

时间:2018-04-02 12:15:25

标签: javascript html node.js express ejs

我正在使用Nodejs,Express,MySQL,EJS。

我需要创建一个如下所示的URL:/ nameOfPage / postl

问题是:/ nameOfPage / postl没有显示相应文件的css,而/ nameofPage确实可以正常工作。它只呈现HTML并在控制台中显示此错误。 "Refused to apply style from 'http://localhost:3000/why/word.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled."

我用Google搜索了问题并给链接标记一个“type =”text / html“删除了错误但是CSS仍然无法正常工作。(我尝试使用和不使用类型,我将类型更改为css而不是HTML,没有任何帮助)

可能出现问题的部分是错误中的URL“http://localhost:3000/why/word.css”,URL的第一个参数与CSS文件有什么关系?我假设它正在尝试阅读它,但我不知道如何解决它。 (我有一个“单词”EJS和CSS文件)

我从MySQL获取页面名称并循环遍历它们并创建适当的页面。

(这是我正在使用的测试代码)

app.get("/why/anele", function(req,res){
    let outsideL =5; 
    let outsideisAuthL =5;
    let outsideUsernameL = 5;
    outsideL = 5;

    let name = 5;
    let title = 5;
    let description = 5;
    let sidebar = 5;
    let submissiontext = 5;
    outsideUsernameL = 5;
    let isAuthenticated = 5;

    res.render("word", {name: name, description: description, sidebar:sidebar, submissiontext:submissiontext, outsideUsernameL:outsideUsernameL, outsideisAuthL:outsideisAuthL, outsideL:outsideL})})

将“/ why / anele”更改为“/ why”确实有效,但我需要“/ why / anele”才能工作。 (/为什么/也不起作用)

“word”EJS文件的头部。

                       <head>
                          <title>This is the Title This is the Title This is the Title</title>
                          <meta name="keywords" content=" vote, comment, submit ">
                          <meta name="description" content="internet">
                          <meta name="referrer" content="origin">
                          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
                          <link rel="stylesheet" href="word.css">

                      </head>

1 个答案:

答案 0 :(得分:0)

当你链接你的css文件时:

<link rel="stylesheet" href="word.css">

您的服务器无法理解根目录中的css文件,它会在提供的路径中进行搜索。

为了纠正这个问题,只需按照这个

<link rel="stylesheet" href="/word.css">