0

リストボックスにカスタムスタイルを適用しようとしていますが、スタイルが適用されていないのは次のCSSです。

.gwt-ListBox{
 background: #fff;
 border: 1px solid #96CAEA;
}

私はIEで自分のコードを調べましたが、私が理解しているのは、Standard.cssからインセットを選択しているため、ソリッドではなく、次のような新しいcssクラスを使用してみました。

.listBox{
 background: #fff;
 border: 1px solid #96CAEA;
} 

そしてこれも私のアプローチの何が悪いのか同じ結果をもたらします、ありがとう、

4

3 に答える 3

1

GWTにはテーマの概念があります。

テーマを継承している場合は、スタイルが上書きされます。firebugを使用して、計算されたスタイル、ダウンロードされたスタイルシート、および適用されたスタイルを検索します。ホシカメムシの情報を確認したら、簡単に修正できます。

ここに画像の説明を入力してください

多くのカスタマイズを行う必要がある場合は、GWTでクリーンなテーマを使用する方が簡単です。

標準のテーマを使用していて、それに固執している場合。.listboxスタイル名に!importantタグを使用する必要があります

.listBox{
 background: #fff;
 border: 1px solid #96CAEA !important;
}

!importantの使用は、少し乱雑またはハッキーなアプローチと見なされます:)

于 2012-12-05T10:57:21.527 に答える
0

国境の問題を解決するには、以下を使用してみてください

border: 1px solid #96CAEA !important;
于 2012-12-05T13:13:00.093 に答える
0

UIOBjectのプロパティを設定して、ListBoxプライマリCSSテーマをクリアし、必要に応じて独自のテーマを追加できます。

例えば

ListBox list = new ListBox();
list.setStylePrimaryName("listBox");

プロパティJavaDOC

"Sets the element's primary style name and updates all dependent style names."

注:このcssをuiファイルに追加する必要があります。または、CSSResourceを作成してCSSファイルを参照することもできます。

interface ListBoundle extends ClientBundle{
    ListBundle INSTANCE = GWT.create(ListBundle.class); 

    interface ListBoxCssResource extends CssResource {
        String listBox();
    }
    @Source("package.listBox")
    @CssResource.NotStrict
    ListBoxCssResource css();
}

次に、を指すプロパティを設定します

String listBox();

お気に入り

ListBox list = new ListBox();
list.setStylePrimaryName(ListBoundle.ListBoxCssResource.listBox());

UiBinder内で使用するには、タグを使用する必要があります。

例えば

<ui:style>
    .gwt-ListBox{
          background: #fff;
          border: 1px solid #96CAEA;
    }
</ui:style>

<g:ListBox styleName="{style.gwt-ListBox}"/>

ただし、外部リソースを使用する方が適切です。

詳細については、こちらをお読みください

于 2012-12-06T12:11:53.220 に答える