我正在使用GWT与UiBinder,我不知道如何能够让默认的CSS样式规则正常工作.到目前为止,我已经通过分配自定义CSS类名来成功设置我的组件样式,如下所示:
但是当使用GWT的默认CSS类名时,如下例所示,该样式根本不应用:
我认为它可能与GWT处理UiBinder类名的方式有关.在将UiBinder样式名设置为{style.createButton}后,当我使用Firebug检查Web应用程序中的按钮时,它使用某种混淆的类名:
class="GBMSFK0DJJ"
当我在没有分配任何类名后检查它时,它说:
class="gwt-Button"
虽然按钮似乎具有正确的类名,但是我未在UiBinder样式部分中定义的样式.我错过了什么或这是一个错误吗?
(如果你想知道为什么我不只是将自己的自定义样式名称分配给按钮:我实际上是尝试使用.gwt-TreeItem来设置TreeItems的样式,但是按钮类可能是一个更好的例子.)
最佳答案
您的ui:style中的.gwt-Button将被混淆,因此不会应用于class =“gwt-Button”.
您必须将其标记为@external才能使其不被混淆:
@external .gwt-Button;
.gwt-Button { background-color: red; }