我们可以设置url for g:Css中的图像而不是Gwt UiBinder中的View.java吗?

时间:2013-09-22 15:27:29

标签: css image gwt uibinder gwtp

<g:Image ui:field="myImage" url="/images/icon/close.png" />

此代码工作正常,但以下内容无法正常工作

.myCss { background: url(/images/icon/close.png);}

我问过这个问题的问题。让图像你需要在10个演示者中使用关闭图标。当用户将鼠标悬停在此图标上时,它将调用closeHover.png。因此,如果我们在TestView.java中设置url,那么我们必须为另外10个视图执行此操作。但是如果我们在Css上设置Url,我们不需要编码10次?

我们可以在Gss UiBinder中为C:而不是View.java中的g:Image设置Url吗?

2 个答案:

答案 0 :(得分:0)

简而言之,是的,你可以。只需给它一个常规的CSS类,而不是ui:style名称,这样它就不会被混淆。

但为什么要使用<g:Image>呢?为什么不使用Button或div(HTML或Label)?

答案 1 :(得分:0)

尝试将ui:image@url一起使用。

首先,将图像移动到uiBinder类的同一个包中,而不是使用war/images/icon文件夹。

然后使用以下代码:

<ui:image field="myIcon" src="close.png" />

<ui:style>
@url myIconRef myIcon;
.myCss { background: myIconRef;}
</ui:style>

如果你想把图像放在另一个包中,没问题。您可以使用相对路径引用它,如:

<ui:image field="myIcon" src="../images/icon/close.png" />