我正在迁移到CssResource的使用。
但是,我不明白如何使用前缀样式:(...之类的东西:

.prefix .label {
 padding: 10px;
}

.prefix .button {
 padding: 20px;
}

我如何将其转换为CssResource类并在代码中使用它:(...
我在玩@Import@ImportedWithPrex@Share,但是这一切都令人困惑,文档很难理解:(...
请一些帮助?

埃德

最佳答案

这是一些代码,演示了ImportedWithPrefix注释的用法

 interface Bundle extends ClientBundle {
    @Source("CssImportScopeSample.css")
    InnerStyle innerStyle();

    @Source("CssImportScopeSample.css")
    OuterStyle style();
  }

  @ImportedWithPrefix("inner")
  interface InnerStyle extends Style {
  }

  @ImportedWithPrefix("outer")
  interface OuterStyle extends Style {
  }

  interface Style extends CssResource {
    String body();
  }

还有一个小的UiBinder代码。

<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' >
  <ui:with field='bundle' type='com.google.gwt.uibinder.test.client.CssImportScopeSample.Bundle' />

  <ui:style import='com.google.gwt.uibinder.test.client.CssImportScopeSample.OuterStyle
        com.google.gwt.uibinder.test.client.CssImportScopeSample.InnerStyle'>
    .outer-body .inner-body { width: 100px; background-color: red; }
  </ui:style>

  <div class='{bundle.style.body}'>
    <span ui:field='outer'/>
    <div ui:field='inner' class='{bundle.innerStyle.body}'>Inner!</div>
  </div>
</ui:UiBinder>

希望这能使您走上正确的轨道。

08-03 17:16