news 2026/6/10 1:09:43

Spring Boot + Thymeleaf 项目中登录页 CSS 样式失效问题排查与解决方案

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring Boot + Thymeleaf 项目中登录页 CSS 样式失效问题排查与解决方案

问题现象

编写了一个漂亮的登录页 login.html,引用了 login.css、pear.css 等样式文件,导入了一些漂亮的图片

<link rel="stylesheet" href="../static/admin/css/other/login.css" />
<img class="login-bg-img" src="./admin/images/banner.png" alt="" />

但启动 Spring Boot 应用后,访问登录页(如 http://localhost:8080/login),页面却像这样:

  • 没有背景图
  • 按钮是浏览器默认样式
  • 布局错乱,文字堆叠
  • 开发者工具中看不到任何自定义样式


F12 查看元素,发现所有 class 都存在,但 CSS 文件根本没加载!

根本原因:静态资源路径理解错误

解决方案

修改 login.html —— 使用 Thymeleaf 语法引入资源

<!-- ✅ 正确方式:使用 th:href="@{...}" --> <link th:href="@{/admin/css/other/login.css}" rel="stylesheet" />
<img class="login-bg-img" th:src="@{/admin/images/banner.png}" alt="" />

创建 Controller 映射路由

@Controller public class PageController { @GetMapping("/login") public String login() { return "login"; // 返回 templates/login.html } }

现在可以通过 http://localhost:8080/login 正常访问登录页。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 20:19:17

课程论文还在熬夜凑字数?虎贲等考 AI:让学术写作高效又拿分

对于大学生而言&#xff0c;课程论文是贯穿整个求学阶段的 “常规任务”。从公共课的短篇报告到专业课的深度论文&#xff0c;既要满足 “专业性达标、原创无抄袭” 的学术要求&#xff0c;又要在繁重的课业压力下快速完成 —— 不少同学陷入 “为凑字数熬夜、因重复率焦虑、因…

作者头像 李华
网站建设 2026/6/6 17:01:04

删除Windows系统并安装Ubuntu系统

把原 Windows 系统盘直接格式化掉&#xff0c;再全新安装 Ubuntu。 下面给出最简、最安全的“一步到位的删除安装”流程&#xff0c;以及两个常见陷阱&#xff08;BitLocker/Intel RST&#xff09;的提前检查办法。一、安装前必做的 3 件事 备份数据 把桌面、文档、微信/QQ 聊天…

作者头像 李华
网站建设 2026/6/10 11:17:21

COMSOL Multiphysics 负压抽采瓦斯数值模拟探索

[1]模型简介&#xff1a;COMSOL Multiphysics进行负压抽采瓦斯数值模拟研究&#xff0c;主要研究瓦斯压力及应力变化。 [2]案例内容&#xff1a;数值模型一个 [3]模型特色&#xff1a;详见图片&#xff0c;学习流固耦合&#xff0c;在此基础上进行进一步的学习。 最近在研究CO…

作者头像 李华
网站建设 2026/6/10 14:48:36

第一章:从连续世界到可计算存在

第一章&#xff1a;从连续世界到可计算存在 1.1 连续世界的问题 在任何形式的认知开始之前&#xff0c;世界本身并不是“对象化”的。 时间是连续的。 它没有天然的分割点&#xff0c;也不存在“这一刻”和“下一刻”的物理边界。 任何时间片段的划分&#xff0c;都只是观察者人…

作者头像 李华