有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java css文件不适用于springboot项目

我正在做一个spring boot项目,但不知怎么的,我的自定义css文件不起作用。css文件看起来像这样,只是为了测试: 风格css: .spacer{margin-top: 30px;} html文件如下所示: 指数html

<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="dist/css/bootstrap.css"/>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<body ng-app="Cat" ng-controller="Controller">
<div class="container spacer">
<form>
    <label>
        <input type="text" ng-model="key">   
    </label>
</form>
</div>
....

引导程序。css很好用,但风格不同。css不是。我尝试的第一件事是检查样式是否正确。运行应用程序时,css是否为空,当我这样做时,我意识到文件确实为空,所以我去更改了源代码,如下所示:

<link rel="stylesheet" type="text/css" href="http://localhost/css/style.css"/>

现在文件不再是空的,但仍然无法工作


共 (2) 个答案

  1. # 1 楼答案

    我不知道是怎么做到的,但我最终通过如下方式更改了源代码:

    <link rel="stylesheet" type="text/css" href="../css/style.css"/>
    
  2. # 2 楼答案

    您没有提到是否正在使用Spring Security

    很可能你已经解决了这个问题——但我在发布它,希望它能帮助其他将Spring安全性作为依赖项添加的人,以及 不能让CSS工作(或使用其他静态资源)

    我也有类似的问题,以下是我的发现:

    正如您所知,Spring Security会阻止除应被授予访问权限的资源(如配置类或xml中所述)之外的资源。据我所知,在配置文件中大致如下所示:

    @Override
    public void configure(WebSecurity web) throws Exception {
      web.ignoring().antMatchers(“/css/**”,”/fonts/**”,”/libs/**”);
    }
    

    不过,在添加上述之前,请考虑以下事项:

    如果按照中的教程实现Spring安全性

    https://spring.io/guides/gs/securing-web/

    您被告知向config类添加以下注释:

    @Configuration

    @EnableWebSecurity

    但根据这一消息来源(也是Spring自己的网站):

    https://docs.spring.io/spring-boot/docs/current/reference/html/howto-security.html

    上面的第二个注释“…将在Spring Boot中关闭默认的webapp安全设置…”

    根据这个来源(下面提供的链接),Spring Boot项目的webapp安全设置默认包含类似于上面提供的代码(允许css或类似资源进入的代码)

    http://www.mkyong.com/spring-boot/spring-boot-spring-security-thymeleaf-example/

    (参见源代码中SpringSecurityConfig.java中的注释)

    所以我评论了@EnableWebSecurity和所有其他Spring安全特性在css被授予访问权限时的工作情况

    希望有帮助