java - 资源文件夹下的 css 文件中图像 url 的值应该是多少,并且此资源文件夹在 spring 中映射为默认 servlet?

标签 java css spring jsp

我正在创建 maven spring java web 应用程序。我在 web.xml 中为默认 servlet 放置了一个映射,它映射到 Web 应用程序文件夹下的资源文件夹。现在在这个资源文件夹下我有三个文件夹:

img、css、html。

我在 web-inf 文件夹下有一个 jsp 页面。从这个 jsp 页面我指向 css,从 css 我正在设置 img 文件夹中的背景图像。

css 已成功包含在 jsp 页面中,但未加载背景图像无法解析并找到要在 url() 方法下定义的图像的准确路径。

以下是我的资源片段:

  1. CSS 文件:

    正文{

    height : 70%;
    background-image: url('/resources/img/images1.jpeg'); 
    background-size:  cover;
    background-repeat: no-repeat;
    z-index: -1;
    

  2. web.xml :

    <servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/resources/*</url-pattern>
    </servlet-mapping>
    

请提供一些解决方案并解释这个包含图像的概念?

最佳答案

当通过 导入 CSS 样式表时,样式表由 FacesServlet 通过/javax.faces.resource/* 导入和处理。查看生成的元素指向有问题的样式表,您就会明白。

您必须更改所有 url() 依赖项以使用 #{resource['library:location']} 代替。然后 JSF 将自动用正确的路径替换它。鉴于您的文件夹结构,您需要更换

.c2 {
    background: url("/resources/images/smiley.jpg");  
}

通过

.c2 {
    background: url("#{resource['images/smiley.jpg']}");  
}

How to reference CSS / JS / image resource in Facelets template?

关于java - 资源文件夹下的 css 文件中图像 url 的值应该是多少,并且此资源文件夹在 spring 中映射为默认 servlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44635479/

相关文章:

java - 为什么局部变量在 if-else 结构中启动,而不是在 if-else-if 结构中启动?

javascript - 如何重新加载 css 样式表

Jquery Plugin easySlider 1.7 - 如何在 easySlider 中创建交叉淡入淡出效果?

PHP CSS::内联工作但不是内部和外部样式表

java - 在 request.getParameter ("something"中获取 null )

java - GWT Activity/Places 应该是 Singletons 还是 Prototypes?

java - java中this和this()有什么区别

java - Spring 应用程序上下文的 Web 控制台

java - Spring Boot 与 Spring Loaded 和 Gradle 配合使用

java - 如何在 Java 中将字符串评估为数组?