css文件无法使用springboot项目

时间:2017-04-03 18:34:41

标签: java html css spring-boot angular-ui-bootstrap

我正在开发一个spring boot项目,不知怎的,我的自定义css文件无效.css文件看起来像这样,仅用于测试: style.css: .spacer{margin-top: 30px;} 并且html文件如下所示: 的index.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>
....

bootstrap.css工作正常,但style.css不行。我尝试的第一件事是在运行应用程序时检查style.css是否为空,当我这样做时,我意识到文件确实是空的,所以我去改变了这样的源:

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

现在文件不再是空的,但它仍然无效。

3 个答案:

答案 0 :(得分:0)

您能否检查一下style.css是否已加载到浏览器中(检查开发人员工具中的网络选项卡),<div>的边距未被其他样式定义覆盖使用?

答案 1 :(得分:0)

我不知道如何但是我最终通过改变这样的来源来实现它:

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

答案 2 :(得分:0)

您没有提及是否使用的是Spring Security。

而且很可能你已经解决了这个问题 - 但是我发布它希望它可以帮助那些将Spring Security添加为依赖项的其他人,以及 无法使用CSS(或使用其他静态资源)。

我有类似的问题,这是我发现的:

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

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

但是,在上面添加之前请另外考虑一下:

如果按照

中的教程实现Spring Security

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

您被告知要在配置类中添加以下注释:

@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 Security功能都按预期工作,同时css被授予访问权限。

希望它有所帮助。