1.用css的expression判斷表達(dá)式 input { background-color:expression(this.type=="text"?'#FFC':''); } 優(yōu)點(diǎn):簡單 缺點(diǎn):expression判斷表達(dá)式FireFox是不支持的。致命的是只能區(qū)分出一個(例如例子中就只能區(qū)分出text文本框),不要試圖設(shè)置多個,下面的會將上面的覆蓋掉 2.用css中的type選擇器 input[type="text"] { background-color:#FFC; } input[type="password"] { background-image:url(BG.gif); } 優(yōu)點(diǎn):簡單,明了,可以分區(qū)出各個input控件形態(tài)。 缺點(diǎn):type選擇器,IE6之前的對web標(biāo)準(zhǔn)支持的不太好的瀏覽器不能支持 3.用javascript腳本實(shí)現(xiàn) <mce:script language=javascript><!-- switch(type) { case 'text': style.backgroundColor="red"; break; case 'password': style.backgroundImage="url(BG.gif)"; break; case 'submit': style.backgroundColor="blue"; style.color="white"; break; } // --></mce:script> 優(yōu)點(diǎn):可以分區(qū)出各個input控件形態(tài)。 缺點(diǎn):在js沒有起作用之前,各個input還是原始狀態(tài),然后突然“變帥”會讓你的頁面很奇怪。較致命的是FireFox不支持 4.用Skin設(shè)置 Skin文件參考代碼: <asp:TextBox runat="server" style="background-color:#FFC " mce_style="background-color:#FFC "></asp:TextBox> <asp:Button runat="server" style="”background-color:red”" mce_style="”background-color:red”"></asp:Button> 注意里面的樣式是用style加上的,而不是用cssClass,道理很簡單,如果用cssClass,前面的再用cssClass就會覆蓋這個 cssClass。導(dǎo)致失敗。當(dāng)然,skin不能單獨(dú)使用,還要配合css樣式表。 優(yōu)點(diǎn):可以分區(qū)出各個控件形態(tài)(注意:skin只能對服務(wù)器端控件使用,所以現(xiàn)在已經(jīng)不是單純的input標(biāo)簽了,雖然這些服務(wù)器端控件“打到”前臺的時候仍然是input控件)。 缺點(diǎn):只能對服務(wù)器端控件使用。
|
|