首页 > 解决方案 > 使用 css 的背景图像从 servlet 显示 svg

问题描述

我有以下 servlet 代码片段:

Blob blob = rs.getBlob("ICON");
byte[] bytes = blob.getBytes(1, (int)blob.length());
response.getOutputStream().write(bytes);
response.setContentType("image/svg+xml");

和CSS片段: background-image: url(/IconData?type=get&iconId=6)

图像未显示。

如果我直接在浏览器中设置 servlet URL,那么 svg 会正确显示。我在 Chrome 网络控制台中注意到的一件事是,在访问 servlet 时,不会在响应标头中发送 image/svg+xml 内容类型。

我错过了什么?

我用这个保存到数据库中的 svg 文件进行了测试: usa.svg

标签: javahtmlcssservletssvg

解决方案


粘贴到您的 html 中

    content:type="image/svg" inside <header> <img> or <svg> ie <svg    
    content:type="image/svg"> 

推荐阅读