1*使用这里
解释的精灵
在你的 my.css 文件中使用@sprite
andgwt-image
@sprite .myImage {
gwt-image: 'image';
}
并使用捆绑包将它们注入您的应用程序
interface MyResources extends ClientBundle {
@Source("image.png")
ImageResource image();
@Source("my.css");
CssResource css();
}
它不会让你在那里注入 jQuery Css。
2*
第二种选择是编写一个小 servlet,它为您的图像提供“直接 url 访问”,因此您可以保持 CSS 原样。
这是我为使用 Spring MVC 获取 CSS(而不是图像)而编写的内容。这应该足以说明问题。我正在使用 Spring 的 DispatcherServlet。
private static final String CSS_PATH = "/path/to/my/css/resources/";
private static final String CSS_EXT = ".css";
private static final String CSS_CONTENT_TYPE = "text/css";
@RequestMapping(value = "/resources/css", method = RequestMethod.GET)
public void getCssResource(HttpServletResponse response, @RequestParam("name") String name) throws IOException {
String path = CSS_PATH + name;
InputStream is = SomeClassOnMyClassPath.class.getResourceAsStream(path + CSS_EXT);
if (is != null) {
flushResource(response, is, CSS_CONTENT_TYPE);
}
}
private void flushResource(HttpServletResponse response, InputStream is, String contentType) throws IOException {
DateTime expirationTime = new DateTime().plusDays(16);
response.setContentType(contentType);
response.setDateHeader("Expires", expirationTime.getMillis());
IOUtils.copy(is, response.getOutputStream());
response.flushBuffer();
}
然后,您可以在 /resources/css?name=cssName url 获取 CSS