【问题标题】:Override body selector when using CssResource使用 CssResource 时覆盖正文选择器
【发布时间】:2011-07-11 16:47:16
【问题描述】:

根据本指南,我正在使用 ClientBundle 中包含的 CssResource: http://code.google.com/webtoolkit/doc/latest/DevGuideUiCss.html#cssfiles

我正在根据本指南使用 ui:with 从我的 UiBinder xml 访问样式: http://code.google.com/webtoolkit/doc/latest/DevGuideUiBinder.html#Using_an_external_resource

这非常适合使用 html 元素上的类或 GWT 小部件上的 styleName 访问我的 css。但是,我想覆盖正文选择器,我该如何实现呢?

当我之前在我的 html 文件中使用标签或当我指向我的 GWT 模块 xml 中的 css 时,这非常有用。但由于这已被废弃,我转而只使用 CssResource。现在不使用我自己的 body 选择器,而是使用 GWT Standard Theme 中的那个。

【问题讨论】:

    标签: css gwt


    【解决方案1】:

    好的,我自己为此找到了两个解决方案:

    1. 根据本指南,将 @external 添加到正文 CSS 选择器以抑制选择器混淆: http://code.google.com/webtoolkit/doc/latest/DevGuideClientBundle.html#External_and_legacy_scopes

      @外部主体; 身体 { 我的风格 }

    2. 为 body 添加一个 id,使用 GWTs DOM.getElementById 抓取元素并添加样式。

      元素主体 = DOM.getElementById("bodyId"); body.addClassName(AppResources.layout().body());

    希望这可以帮助其他处于相同情况的人。

    【讨论】:

    • body 元素不需要@external 注释。 @external 仅对未混淆的类名是必需的,而不是元素名。
    猜你喜欢
    • 1970-01-01
    • 2019-07-30
    • 2012-02-15
    • 1970-01-01
    • 2020-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多