Это моя структура папок (представления находятся в корневом каталоге):
просмотры/подрядчик/аутентификация/login.ejs
Когда я перехожу к этому файлу, CSS не существует. Он не подключается к CSS, который находится в (public находится в корневом каталоге):
общественность/активы/CSS/styles.css
Это мой app.js (в корневом каталоге):
app.set("view engine", "ejs");
app.use(express.static("public"));
app.use(express.static(__dirname + "/public"));
app.use(express.static(__dirname + "/public/css"));
app.use("/public/css/images", express.static("./public/css/images"));
Однако, если я перехожу к другому файлу с именем home.ejs, который находится в корневом каталоге представлений, CSS работает.
Я полагаю, что это как-то связано со структурой подкаталога, не определенной app.use
в моем файле app.js. Может ли кто-нибудь объяснить мне, почему и как это исправить?
Я думаю, что на вашей HTML-странице вы используете абсолютную ссылку на css, которая ссылается на ссылку сервера, но страница при ее выполнении вызывает css из браузера.
У меня нет кода HTML, чтобы подтвердить это, поэтому вы можете сделать следующее: введите F12 при открытии страницы и попробуйте выполнить поиск в загруженных файлах на странице html, если ваш css успешно загружен, он должен появиться в иерархия списка файлов, используйте ссылку на css из корневой папки и поместите ее в импорт файла css. Дайте мне знать, если это сработает! Я так прыгаю.
да ты в точку, спасибо