java - 如何在jsp页面中使用css

标签 java spring jsp spring-mvc

我尝试使用 jsp 页面中的 css 文件,但页面看不到 css 代码。

这是我的 .jsp 文件;

<html class="no-js" lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Foundation | Welcome</title>
    <link rel="stylesheet" href="/sources/css/foundation.css" />
    <script src="/sources/js/vendor/modernizr.js"></script>
  </head>
  <body>

enter image description here

enter image description here

这是我的配置文件

    @Configuration
    @ComponentScan("com.sprhib")
    @EnableWebMvc
    public class BaseTestConfig {

        @Bean
        public UrlBasedViewResolver setupViewResolver() {
            UrlBasedViewResolver resolver = new UrlBasedViewResolver();
            resolver.setPrefix("/WEB-INF/pages/");
            resolver.setSuffix(".jsp");
            resolver.setViewClass(JstlView.class);
            return resolver;
        }


            public void addResourceHandlers(ResourceHandlerRegistry registry) {
            registry.addResourceHandler("/sources/**").addResourceLocations("/sources/");
        }

    }

最佳答案

该 Web 应用程序未部署为根 Web 应用程序。所以它有一个“上下文路径”。例如,访问位于 web 应用程序根目录的 index.html 文件的路径实际上类似于

http://localhost:8080/myfirstwebapp/index.html

这是浏览器的地址栏包含的内容,/myfirstwebapp 是应用程序的上下文路径。

因此,如果您的页面包含 href="/sources/css/foundation.css",浏览器将尝试从以下位置加载 css 文件

http://localhost:8080/sources/css/foundation.css

不是来自

http://localhost:8080/myfirstwebapp/sources/css/foundation.css

因此,您需要将上下文路径添加到网络应用中的所有绝对 URL。使用 JSTL:

href="<c:url value='/sources/css/foundation.css'/>"

没有 JSTL:

href="${pageContext.request.contextPath}/sources/css/foundation.css"

关于java - 如何在jsp页面中使用css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21953340/

相关文章:

java - Vaadin - 适合组件的布局尺寸

java - 什么时候可以抛出 NoSuchResult

javascript - 使用 JavaScript 发送删除请求

java - Spring安全认证总是返回401

java - jsp中如何获取下拉列表中选中的文本

java - 如何将按钮移动到中心?

java - 如何解决 setMyLocationEnabled 权限要求?

spring - 创建 @Scope ("session"的新实例时出现 IllegalStateException )

javascript - 在调用 request.getRequestDispatcher() JSP 之前修改 HTML 内容?

java - 为 Spring MVC 中包含 Tile 的任何 Tiles 布局提供对象