css
.myStyle {
height: 10px;
background-image: url(../myImage.png);
}
jsp
<img class=myStyle src=<% imageurl != null ? imageurl: (bacground-image property from my css)%> >
有什么办法可以做到这一点?我不想在我的代码中硬编码默认 url,以允许通过更改 css 属性来更改默认图像。
css
.myStyle {
height: 10px;
background-image: url(../myImage.png);
}
jsp
<img class=myStyle src=<% imageurl != null ? imageurl: (bacground-image property from my css)%> >
有什么办法可以做到这一点?我不想在我的代码中硬编码默认 url,以允许通过更改 css 属性来更改默认图像。
你真正想要的是一个属性文件 - 例如像这样http://www.easywayserver.com/blog/java-resourcebundle-properties-file-jsp/
# image default
myimage.default=../myImage.png
和
<%@ page language="java" import="java.util.*" %>
<%
ResourceBundle resource = ResourceBundle.getBundle("commonVariable");
/// commonVariable.properties file will be in WEB-INF/classess folder
String defaultImage=resource.getString("myimage.default");
.
.
.
if (imageurl==null) imageurl=defaultImage;
%>
<img class="myStyle" src="<%= imageurl %>" />
如果必须的话,可以选择
https://stackoverflow.com/a/2104580/295783
function setImageFromBG(img) {
var style = img.currentStyle || window.getComputedStyle(img, false),
img.src = style.backgroundImage.slice(4, -1);
}
<img class="myStyle" src="<%= imageurl %>" onerror="setImageFromBG(this)" />
如果 bgimage 代码也无法提供良好的图像,则可能会循环