克服 GWT 主题样式优先级
对于同时使用具有自定义 CSS 和 GWT 的 HTML 文件的项目,GWT 主题样式可能会发生冲突优先于 CSS 样式。当 HTML 正文等元素在 CSS 中具有不同的背景颜色但在 GWT 应用程序中显示不同时,此问题就会变得很明显。
要解决此问题并强制执行 CSS 样式,解决方法包括覆盖 GWT 主题样式。 GWT 邮件列表中的解决方案建议创建一个引用 CSS 文件的新 ClientBundle:
<code class="java">import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.CssResource; public interface Resources extends ClientBundle { public static final Resources INSTANCE = GWT.create(Resources.class); @Source("style.css") @CssResource.NotStrict CssResource css(); }</code>
在 onModuleLoad() 方法中,应注入 CSS 文件:
<code class="java">public class YourApp implements EntryPoint { public void onModuleLoad() { //... Resources.INSTANCE.css().ensureInjected(); //... } }</code>
这种替代方法提供了一种干净、直接的方法来覆盖 GWT 主题样式,并确保在 GWT 应用程序中应用所需的 CSS 样式。
以上是如何覆盖自定义 CSS 的 GWT 主题样式优先级?的详细内容。更多信息请关注PHP中文网其他相关文章!