2

我想为我的应用程序使用GWT 引导程序,所以我将 jar 添加到类路径并在 app.gwt.xml 中继承它,并且它到目前为止正在工作(我是引导程序的新手)。

到目前为止,我还没有使用 UIBinders 进行布局,如果可能的话,我希望保持这种方式,因为我有一个非常动态的 UI,它是通过编程生成的,而且我对 UIBinders 的经验很少。但是,对于我想从 gwtbootstrap 使用的元素,我创建了 UIBinders(例如标题和按钮)。

问题在于,不仅我使用 gwtbootstrap 元素使用 UIBinders 创建的元素看起来像 gwtbootstrap 元素,而且页面上的所有元素都看起来像 gwtbootstrap 元素。

一个简单的例子:如果我使用引导元素创建这样的标题,这没有任何区别

<b:Heading size="2">Hello GWT Bootstrap</b:Heading>

或者像这样使用标准 HTML

<h1>Hello GWT Bootstrap</h1>

两者看起来都像 GWT Bootstrap 标题。这同样适用于所有其他元素,因此页面上的任何元素都由 gwtbootstrap 设置样式,即使我不想要它并且我找不到控制它的方法。

4

1 回答 1

2

这是因为 gwt-bootstrap 将 bootstrap.css 注入到您的 GWT 应用程序中,而 bootstrap.css 定义了标准 HTML 元素(如<h1>等)的默认样式。

如果您不希望引导程序覆盖默认样式,则有几种解决方案:

  1. 修改gwt-bootstrap库文件中的bootstrap.css,去掉不需要的样式
  2. 创建一个单独的 css 文件,将特定 HTML 元素的样式设置回来(使用!important)
  3. 扩展 gwt-bootstraps CssResources 并传递自定义 css 文件。

解决方案 3 可能是最干净的解决方案。

于 2013-06-26T12:05:50.543 回答