#javascript #node.js #express
#javascript #node.js #экспресс
Вопрос:
Я пытаюсь загрузить html-файл, который также содержит стиль. Могу ли я загрузить html-файл, содержащий стиль?
Обновление: стиль загружается через внешний файл CSS
const express = require('express');
const fs = require('fs');
const app = express();
app.get('/', (req, res) => {
res.sendFile(__dirname '/index.html');
});
app.listen(3000)
Комментарии:
1. Встроенный CSS конечно, ссылки на стили с CDN также будут работать. Почему бы не попробовать это, перейдя к маршруту и убедившись в этом сами. Не уверен, запрашиваете ли вы внешние локальные файлы CSS?
2. @ambianBeing я загрузил index.html файл, к которому привязан внешний css. Но отображается только часть html. Стиль не отображается..
3. В этом случае, пожалуйста, обратитесь к ответу, который я опубликовал, и проверьте его, если это поможет.
Ответ №1:
Да, вы можете загрузить его. HTML, который содержит или ссылается на CSS, по-прежнему является действительным HTML.
Ответ №2:
Чтобы загрузить внешний файл CSS, вы можете использовать их как статические файлы с помощью express express.static
, а затем ссылаться на него в файле HTML.
Например: предположим, что эта структура каталогов обслуживает public
папку
|---node_modules
|---index.html
|---package.json
|---package-lock.json
|---server.js
|---public
|---images
|---js
|---css
|--style.css
server.js
app.use(express.static("public"));
app.get("/", function (req, res) {
res.sendFile(path.join(__dirname, "/index.html"));
});
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<link rel="stylesheet" href="css/style.css" />
<title>Document</title>
</head>
<body>
<h1>This is index.html</h1>
</body>
</html>