2012-02-13 92 views
1

JSP1:具有Dojo小部件。風格主題「claro」用於body標籤。更改dijit的主題或風格

JSP2:有一個dojo小部件 - 對話框。樣式定義直接應用於小部件。 (功能上這個jsp是一個頁腳)。

<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對話框中定義越來越重寫,並出現與在claro.css定義的樣式對話框(帶藍色標題欄,關閉圖標等)。

必需:對話框應該像在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定義 的樣式(對話框標題欄與藍色,關閉圖標等)。

所以這意味着你的風格被找到並被應用。道場主題風格更具體。什麼是替代你的選擇器?

沒有看到的是,我可能會建議增加一類,你的身體標記,像<body class='claro myCompany'...,然後添加到您的選擇:

.myCompany .form1 .dijitDialog

+0

更新:它的工作!正如你所建議的,我添加了另一個CSS的dojo對話框的新選擇器。感謝 – SJ11 2012-02-17 15:39:16

+0

真棒,很高興它幫助! – mtyson 2012-02-17 17:14:41

+0

你能舉個例子嗎? – 2013-09-12 12:51:36