我的弹簧启动应用程序有问题。 看来它不加载自定义的CSS文件。 我把它放在resources/static/css,我也试过resources/public/css但是它也不行。春季不加载自定义css
我离开你我的git的枢纽账户项目,以便您可以检查什么是错的
此外,当我打开Chrome浏览器的控制台下的登录页面有一个警告
将资源解释为样式表,但以MIME类型text/plain传输:“http://localhost:8080/css/style.css”。
我的弹簧启动应用程序有问题。 看来它不加载自定义的CSS文件。 我把它放在resources/static/css,我也试过resources/public/css但是它也不行。春季不加载自定义css
我离开你我的git的枢纽账户项目,以便您可以检查什么是错的
此外,当我打开Chrome浏览器的控制台下的登录页面有一个警告
将资源解释为样式表,但以MIME类型text/plain传输:“http://localhost:8080/css/style.css”。
问题就出在你的MonthlyExpensesController
其中包含下面的代码:
@RestController("/monthly")
public class MonthlyExpensesController {
@GetMapping()
public Expenses getMonthlyExpenses() {
return null;
}
}
你的错误是您尝试设置的路径/月与注释的值时,控制器。但是@RestController
注释的值不是用作bean名称,而不是用于路径解析。
因此,您的MonthlyExpensesController
已注册为默认路径。它被发现是一个控制器,用于处理/css/style.css并返回null
,这会导致您看到空的响应。
控制器更改为:
@RestController
public class MonthlyExpensesController {
@GetMapping("/monthly")
public Expenses getMonthlyExpenses() {
return null;
}
}
和它的作品,因为它应该。
还有一件事:请在未来使用最少的可编译示例,我首先必须设置一个虚拟数据库以使程序运行。
更新:
除了改变控制器,从而CSS文件将送达,你需要修复的代码加载样式表。你必须改变
<link type ="text/css" href="css/style.css"/>
到
<link rel="stylesheet" href="css/style.css"/>
否则文件将不被解释为一个CSS文件。然后登录页面看起来是这样的,当我运行它:
就个人而言,我会加载从页的结尾的CSS文件中的行移动到<head>
部分,防止无样式页面显示直到css被加载。
试试这个。 由于您使用的是Thymeleaf,因此您可以使用它来获取资源。
<link type="text/css" href="../static/css/style.css"
th:href="@{css/style.css}" rel="stylesheet" media="screen"/>
它不工作,同样的错误 – untruste
嗨,我修改了控制器,如你所说(我也更新了项目在github,你可以看到),但错误仍然存在。我注意到,如果我去localhost:8080/css/style.css它显示该文件。我也尝试删除控制器MonthlyExpenses,但它不起作用 – untruste
检查我更新的答案,在包括css文件的语句中有错误 –