Je fais un projet avec Spring MVC et Thymeleaf. J'ai une question sur la façon dont je devrais référencer mes fichiers CSS si j'ai cette structure de dossiers:
src
main
webapp
resources
myCssFolder
myCssFile.css
web-inf
spring
views
myViewFolder
index.html
Ma classe de configuration est comme ceci:
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/css/**").addResourceLocations("/css/**");
registry.addResourceHandler("/img/**").addResourceLocations("/img/**");
registry.addResourceHandler("/js/**").addResourceLocations("/js/**");
registry.addResourceHandler("/sound/**").addResourceLocations("/sound/**");
registry.addResourceHandler("/fonts/**").addResourceLocations("/fonts/**");
}
Et j'appelle href
dans mon fichier d'index comme ceci:
href="resources/css/bootstrap.min.css"
Mais il y a des éléments qui sont un peu foirés dans ma page, par exemple le CSS ne fonctionne pas.
Vous devrez utiliser l'attribut th:href
pour faire référence aux fichiers css. Voici un exemple de tutoriel thymeleaf. Si thymeleaf ne peut pas évaluer la valeur th:href
, sa valeur par défaut est href
.
<head>
<title>Good Thymes Virtual Grocery</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" media="all"
href="../../css/gtvg.css" th:href="@{/css/gtvg.css}" />
</head>
J'ai un tel problème! Cela m'a aidé.
<link th:href="@{/css/MyCSS.css}" href="/css/MyCSS.css" rel="stylesheet" type="text/css" />