我已经用 GWT 修补了一个强调活动的菜单,因此悬停该项目。
只要我为 CSS 定义任何类,这就会很好地工作。因为我这里有两个菜单,所以我想使用 CSS 类。
不管我现在怎么转转和使用的类,它都不起作用。
在这里,功能实现和可能有人可以告诉我现在如何添加类 "Item" 。即这些样式仅适用于具有“Item”类的元素,“active”类继承该项目的属性。:)
我用活动项目做到了:尝试访问,但这里似乎没有向元素添加样式......
菜单项.ui.xml
<ui:style type='de.hfu.wolke.client.MenuItem.MyStyle'>
.item:link, .item:visited
{
padding: 0 20px;
background-color: #83B81A;
border-left:1px solid #83B81A;
border-bottom:1px solid #83B81A;
border-top:1px solid #83B81A;
border-right:1px solid white;
text-align: left;
text-decoration:none;
display: block;
float: left;
font: bold 12px Arial;
line-height: 26px;
color:white;
}
.item:hover, .item.active:visited, .item.acitve:link
{
background-color: white;
color: #83B81A;
border-left-color:white;
border-right-color:white;
}
</ui:style>
<g:HTMLPanel>
<g:InlineHyperlink styleName="{style.item}" ui:field="itemLink"></g:InlineHyperlink>
</g:HTMLPanel>
附加样式“活动”
interface MyStyle extends CssResource {
String active();
// String item();
}
public void activate(){
itemLink.addStyleName(style.active());
}
public void deactivate(){
itemLink.removeStyleName(style.active());
}
提前致谢。:)
编辑:我不确定哪些步骤解决了问题。首先,我通过删除“a”标签简化了样式。我认为伪类只使用它。;-) 此外,我直接在 UIBinder 中添加了“项目”的样式,而不是在构造函数中。最后但同样重要的是,我使用了“addStyleName”和“removeStyleName”而不是“setStyleName”。我想“setStyleName”。我想这是关键的解决方案。