2012-02-13 14 views
1

JSP1:bodyタグにDojo widget.Styleテーマ「claro」が使用されています。dijitのテーマやスタイルを変更してください

JSP2:dojoウィジェット - ダイアログボックスがあります。スタイル定義はウィジェットに直接適用されます。 (機能的にはこのJSPはフッタです)。実行時に、JSP2ダイアログボックスで定義されたスタイルをオーバーライドなっていると、ダイアログボックスがclaro.cssで定義されたスタイルで表示されます。

<div dojoType="dijit.Dialog" id="privacyDialog" style="background-color:#FFFFDF; border-style:solid; border-width:1px; border-color:#000; height:203px; width:350px; z-index:9999; display:none;"> 

JSP1はJSP2

問題を含み(青色のタイトルバー、クローズアイコンなど)。

必須:ダイアログボックスは、JSP2のウィジェットで定義されたとおりに表示されます。

私はhttp://dojotoolkit.org/reference-guide/dijit/themes.html#id24を読んだ後、テーマを上書きしようとしたが、それはまだ部分的に私の場合はclaro.css

に指定されたテーマ(閉じるアイコン、タイトルバー)を表示している:「をForm1」とコードとしてクラスを指定claro.cssに追加されました enter image description here

答えて

2

あなたの戦略は正しいです:より具体的なCSSセレクタであるスタイルを作成して、デフォルトを上書きします。

セレクタ(.form1 .dijitDialog)が要素に適用されていないことが必要です。 Firebugインスペクタの要素を見てください。あなたのスタイルは見つかっていますが、オーバーライドされていますか(Firebugスタイルのインスペクタでは、ストライクスルーがありますか? claroには、より具体的なスタイルがいくつかあります。

あなたのスタイルは要素にまったく適用されていませんか?

また、私はあなたのスタイルをclaro.cssファイルに入れないで、自分の.cssファイルに入れてください。これは、悪夢を減らすために道場をアップグレードします。実行時に、JSP2にダイアログボックスで定義されたスタイルが が上書きなっていると、ダイアログボックスが(claro.cssで を定義されたスタイルで表示されます

:私がいることがわかり

更新 青色のタイトルバー、閉じるアイコンなど)。

これは、スタイルが見つかって適用されていることを意味します。 dojoテーマのスタイルは、より具体的です。あなたの優先順位を上回るセレクターは何ですか?

ことを見なければ、私は、あなたの体のタグにクラスを追加することをお勧めかもしれません<body class='claro myCompany'...のようなものや、あなたのセレクタにそれを追加します。

.myCompany .form1 .dijitDialog

+0

は更新:それは働きました!あなたが示唆していたように、別のCSSでdojoダイアログの新しいセレクタを追加しました。ありがとうございました – SJ11

+0

すごく助かりました! – mtyson

+0

この例を教えてください。 –

関連する問題