首頁 web前端 css教學 css樣式區分input是按鈕還是文字方塊的方法_經驗交流

css樣式區分input是按鈕還是文字方塊的方法_經驗交流

May 16, 2016 pm 12:04 PM
input 按鈕 文字方塊

在設定樣式時怎麼區分input是按鈕還是文字方塊問題的技術調查-把input裡面的東西剔出來

當你看到這個html標籤的時候,你會想到什麼?一個文字方塊?一個按鈕?一個單選框?一個複選框? ……對,對,對,它們都對。也許你可能想不到,這個小小的input竟然可以創造出10個不同的東西,下面是個列表,看看,哪些是你沒想到的:
文字方塊
密碼框
提交按鈕
重置按鈕
單選框
複選框
普通控制按鈕
隱藏框
圖片按鈕
所以你可能會說,input真是個很棒的東西,竟然這麼有「搞頭”,但是當你真正在專案中試圖為不同的控制設定不同的樣式時,你會發現,input真的可以把“你的頭搞大”。我不知道為什麼當初要給input那麼多身份,但是,他的「N重身份」給網站設計者的確帶來了不少的麻煩。還好,勞動人民是偉大的,解決問題的辦法還是有滴~,雖然它們都有各自致命的缺點Orz… 解放方法大致歸納一下,列表如下(小弟才疏,錯誤遺漏難免,還請各位高人指點):

1.用css的expression判斷表達式
2.用css中的type選擇器
3.用javascript腳本實作
4.如果你用Microsoft Visual Studio 2005 或後續版本開發項目,恭喜,你還可以使用skin。

下面就來講解一下各個辦法的詳細實作和它們的優缺點。

1:用css的expression判斷表達式
實現程式碼參考:

doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR /xhtml1/TR /xhtml1/ DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml" >
頭部>
    
標題> diffInput2標題>
    
元資料姓名="作者" 內容="JustinYoung"/>
    
元 元 名稱="關鍵字" 內容=""/>
  /span>元資料名稱 span >="說明" 內容=" " />
http-equiv ="Content-Type" 內容="text/html; charset=utf-8"/>
樣式類型 span> span>="text/css">
    輸入
    
{
    背景顏色
表達式(this.type=="text"?'#FFC':'');
    
}
    
樣式>

頭部>

正文>
dl>
dt>這個是正常的文字方塊:dd>輸入類型= “文本” 名稱="">
dt>> span> span>這是正常按鈕:dd >輸入類型 span>="按鈕" 值="我是按鈕">
dl>
正文>
html>


優點:簡單,輕量化缺點:表達式判斷表達式FireFox是不支援的。致命的是只能區分出一個(例如例子中就只能區分出文字文字方塊),不要試圖設定多個,下面的剪貼上面的覆蓋掉Orz ...

2:用css中的型別選擇器
實作參考碼:
p>

doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR /xhtml1/TR /xhtml1/ DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml" >
頭部>
    
標題> diffInput2標題>
    
元資料姓名="作者" 內容="JustinYoung"/>
    
元 元 名稱="關鍵字" 內容=""/>
  /span>元資料名稱 span >="說明" 內容=" " />
http-equiv ="Content-Type" 內容="text/html; charset=utf-8" />
    
樣式樣式樣式樣式樣式樣式樣式類型="text/css">
    input[type="text"]
    
{
    背景顏色
#FFC;
    
}

    輸入[type="password"]
    
{
    背景圖
url(BG.gif);
    
}

    input[type="submit"]
    
{
    背景顏色
藍色;
    顏色
白色;
}
    input[type="reset"]
    
{
    背景顏色
海軍藍;
    顏色
白色
    
}

    輸入[ type="radio"]
    
{
    
/*在 FF 中,不支援某些無線電樣式,例如背景顏色*/
    邊距
10px;
    
}

    input[type="checkbox"]
    
{
    
/*在 FF 中,不支援某些複選框樣式(如背景顏色)*/
邊距
10 像素
    
}


    輸入[type ="button"]
    
{
    背景顏色
淺藍;    }
樣式>
頭部>

正文>
dl >
dt>這是正常的文字方塊:dd>>輸入類型="text" span> 名稱="">跨度>
dt>> span> span>這是密碼文字方塊:dd >輸入類型 span>="密碼" 名稱=" ">
dt>這個是提交按鈕:dd>輸入類型= “提交”>
dt>>這是重置按鈕:dd>輸入類型="重置">
dt>phpcngt span style="COLOR: # 000000">這是廣播:dd >輸入類型="收音機" 名稱="ground1" span>> phpcnltcnphpcnltcnphpcnltcnphpcnltcn輸入類型="radio"  名稱="ground1">
dt>> span> span>這是複選框:dd>輸入類型="複選框" 名稱="ground2 ">  span>輸入類型="複選框" 名稱="ground2">
phpcnltcnphpcnltcnphpcnltcnphpcnltcnphpcnltcn span style="COLOR: #800000"> dt
>這是普通按鈕:dd>輸入類型="按鈕"  值="我是按鈕">
dl>
正文>
html> p>


優點:簡單,明了,可以分區出各個輸入控制形態。
缺點:類型選擇器,IE6之前的對web標準支援的不太好的瀏覽器不能支援(致命呀Orz…)

3:用javascript腳本實作
實作參考碼:
前台html代碼:

doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR /xhtml1/TR /xhtml1/ DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml" >
頭部>
    
標題> diffInput標題>
    
元資料姓名="作者" 內容="JustinYoung">
    
元 元 名稱="關鍵字" 內容="">
    
元資料名稱 ="說明"

 內容="">
http-equiv ="Content-Type" 內容="text/html; charset=utf-8" >
    
樣式 類型="text/css">
    輸入
{行為:url('css.htc');}
    
樣式>

頭部>

正文>
dl>
dt>這個是正常的文字方塊:dd>輸入類型= “文本” 名稱="">
dt>> span> span>這是密碼文字方塊:dd >輸入類型 span>="密碼" 名稱=" ">
dt>這個是提交按鈕:dd>輸入類型= “提交”>
dt>>這是重置按鈕:dd>輸入類型="重置">
dt>phpcngt span style="COLOR: # 000000">這是廣播:dd >輸入類型="收音機" 名稱="ground1" span>> phpcnltcnphpcnltcnphpcnltcnphpcnltcn輸入類型="radio"  名稱="ground1">
dt>> span> span>這是複選框:dd>輸入類型="複選框" 名稱="ground2 ">  span>輸入類型="複選框" 名稱="ground2">
phpcnltcnphpcnltcnphpcnltcnphpcnltcnphpcnltcn span style="COLOR: #800000"> dt
>這是普通按鈕:dd>輸入類型="按鈕"  值="我是按鈕">
dl>
正文>
html>


Css.htc程式碼:

腳本語言=javascript >
開關(類型)
{
   span>案例文本' :
    style.backgroundColor
="紅色";
    
中斷;

    
案例 '密碼':
    style.backgroundImage
="url(BG.gif)";
    
中斷;

    
案例 '提交':
    style.backgroundColor
="藍色";
style.color
="白色"
    
中斷;

    
案例 '重置':
    style.backgroundColor
="海軍藍";
    style.color
="白色"
    
中斷;

    
案例 'radio': 
    style.backgroundColor
="亮粉紅色"
    
中斷;

    
案例 '複選框': 
    style.backgroundColor
="綠色"
中斷;

    
案例 '按鈕' :
    style.backgroundColor
="淺藍色"
    
中斷

    
預設: ;//其他使用預設樣式。
}
腳本>


優點:可以分區出各個輸入控制型態。多種技術的混合使用,滿足「我是高手」的虛榮心
缺點:技術牽扯致命面教廣,因為用js升級處理,所以在js沒有作業之前,各個輸入還是原始狀態,然後突然「變帥」讓你的頁面很奇怪。較之的是FireFox不支援Orz…

4:Microsoft Visual Studio 2005中使用皮膚。
皮膚檔案參考代碼:

%--樣式常見文字方塊-- %>
asp:TextBox runat="伺服器"  樣式= " span>背景顏色:#FFC "phpcngtcnphp /asp:TextBox>
asp:Button runat="伺服器" 風格= 「背景-顏色:紅色」>asp:按鈕>


注意裡面的樣式是用style加上的,而不是用cssClass,道理很簡單,如果用cssClass,前面的再用cssClass就會覆蓋這個cssClass。導致失敗。當然,skin不能單獨使用,還要配合css樣式表。

優點:可以分割出各個控制項形態(注意:skin只能對伺服器端控制項的使用,所以現在已經不是很簡單的輸入標籤了,雖然這些伺服器端控制「打到」前台的時候仍然是輸入控制)。除了css,又被分離了一層,使得樣式的設定能夠有更好的的客製化。其他優點(參考skin的優點)。
缺點:只能對伺服器端控制使用。不是所有的項目都可以使用skin功能Orz…



總結:上面的方法,都是有各自的優點和缺點,所以單獨的使用任何一個都不能很好的解決問題。所以應該將多個方法配合一起使用,這樣才能較好的解決問題。但多個方法配合使用就是完美的了嗎? NO~!它也有致命的缺點——多套方案的維護需要更大的成本!

 

後記:這是一個以IE6為首,非web標準瀏覽器橫掃天下的亂世年代,不知有多少網頁初學者慘死在IE6的詭異解析模式之下,又有多少程式設計師被IE6所奴役,還有無數web設計者在IE6的胯下忍辱偷生。雖然黑暗中我們欣慰的看到FireFox反對暴統的勇者的出現,以及IE7對Web標準越來越好的支持這道曙光。但是黑夜仍舊將會持續很長一段時間。對於web標準一統天下的年代,我們既喜又悲。喜的是,到那個時候,我們做網頁設計和規劃將會如同吃飯般簡單,悲哀的是:如果真的到了那個時候,我們吃飯的飯碗還能那麼重嗎?不過,為了人類社會的進步,拯救地球的科技,發展宇宙的科技文化 -_-b… 我依然期待web標準一統天下的到來。



keyword:自動區分各類不同的input樣式,在CSS中如何區分,利用Javascript實現自動區分各類別不同的input樣式,input,input type,input type file,input type hidden,input file,input.dll,html input,input type image

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何修復 Microsoft Teams 白屏 如何修復 Microsoft Teams 白屏 Apr 17, 2023 pm 05:07 PM

重新啟動Microsoft團隊如果您在啟動Teams後出現空白畫面,則一個很好的起點是重新啟動應用程式本身。要關閉並重新啟動MicrosoftTeams,請執行以下操作:右鍵單擊工作列通知區域中的Teams圖標,然後從選單中按一下退出。從「開始」功能表或桌面捷徑重新啟動MicrosoftTeams並查看它是否有效。從工作管理員關閉MicrosoftTeams如果Teams進程的基本重新啟動不起作用,請進入工作管理員並結束任務。若要從工作管理員關閉Teams,請執行下列操作

在 Windows 中停用傳遞最佳化服務的 5 種方法 在 Windows 中停用傳遞最佳化服務的 5 種方法 May 17, 2023 am 09:31 AM

許多原因可能使你想要停用傳遞最佳化服務在你的Windows電腦上。但是,我們的讀者抱怨不知道要遵循的正確步驟。本指南將透過幾個步驟討論停用傳遞最佳化服務的方法。要了解有關服務的更多信息,您可能需要查看我們的如何開啟services.msc指南以獲取更多資訊。傳遞優化服務有什麼作用?傳遞優化服務是具有雲端託管解決方案的HTTP下載程式。它允許Windows設備從備用來源下載Windows更新、升級、應用程式和其他大型套件檔案。此外,它還透過允許部署中的多個裝置下載這些套件來幫助減少頻寬消耗。此外,Windo

如何重新啟動、強制重新啟動和關閉 iPad Mini 6 如何重新啟動、強制重新啟動和關閉 iPad Mini 6 Apr 29, 2023 pm 12:19 PM

如何強制重啟iPadMini6強制重啟iPadMini6是透過一系列按鈕按下來完成的,它的工作原理如下:按下並釋放音量調高按下並釋放降低音量按住電源/鎖定按鈕,直到您在螢幕上看到Apple標誌,表明iPadMini已強制重啟僅此而已,您已經強制重啟了iPadMini6!強制重啟通常用於故障排除原因,例如iPadMini被凍結、應用程式被凍結或發生其他一些一般性不當行為。關於強制重啟第6代iPadMini的程序需要注意的一點是,對於所有其他具有超薄邊框並使用

重寫後:

如何解決 PS5 控制器在 Windows 11 上未被辨識的問題 重寫後: 如何解決 PS5 控制器在 Windows 11 上未被辨識的問題 May 09, 2023 pm 10:16 PM

<h3>關於連接我的PS5控制器,我該知道什麼? </h3><p>與DualSense控制器一樣好,有報告指出控制器未連接或未被偵測到。解決此問題的最簡單方法是使用適當的USB電纜將控制器連接到您的PC。 </p><p>有些遊戲本身就支援DualSense。在這些情況下,您只需插入控制器即可。但這引發了其他問題,例如如果您沒有USB電纜或不想使用USB電纜怎麼辦

OneNote如何設定圖片為背景 OneNote如何設定圖片為背景 May 14, 2023 am 11:16 AM

Onenote是Microsoft提供的最好的筆記工具之一。結合Outlook和MSTeams,Onenote可以成為提高工作和個人創意工作效率的強大組合。我們必須以不同的格式做筆記,這可能不僅僅是把事情寫下來。有時我們需要從不同來源複製圖像並在日常工作中進行一些編輯。如果知道如何應用更改,則貼上在Onenote上的圖像可以發揮很大作用。您在使用Onenote時是否遇到過貼在Onenote上的圖像無法讓您輕鬆工作的問題?本文將著重於在Onenote上有效地使用圖像。我們可

如何清空 Microsoft Edge 瀏覽器的下載記錄? 如何清空 Microsoft Edge 瀏覽器的下載記錄? Apr 21, 2023 am 09:34 AM

<ul><li><strong>點選進入:</strong>ChatGPT工具外掛導覽大全</li></ul><h2>在Edge中尋找並移除下載紀錄< /h2><p>與其他瀏覽器一樣,Edge有一個<strong>下載

更改 Windows 11 上的電源按鈕操作 [5 提示] 更改 Windows 11 上的電源按鈕操作 [5 提示] Sep 29, 2023 pm 11:29 PM

電源按鈕可以做的不僅僅是關閉PC,儘管這是桌面用戶的預設操作。如果您想更改Windows11中的電源按鈕操作,它比您想像的要容易!請記住,實體電源按鈕與「開始」功能表中的按鈕不同,以下的變更不會影響後者的操作。此外,您會發現電源選項略有不同,具體取決於它是桌上型電腦還是筆記型電腦。為什麼要在Windows11中更改電源按鈕操作?如果您讓計算機進入睡眠狀態的頻率高於關閉計算機,則更改硬體電源按鈕(即PC上的實體電源按鈕)的行為方式即可。同樣的想法也適用於休眠模式或簡單地關閉顯示器。更改Windows11

如何使用Vue實現按鈕倒數特效 如何使用Vue實現按鈕倒數特效 Sep 21, 2023 pm 02:03 PM

如何使用Vue實作按鈕倒數特效隨著Web應用程式的日益普及,我們經常需要在使用者與頁面互動時使用一些動態效果來提升使用者體驗。其中,按鈕的倒數特效是非常常見且實用的效果。本文將介紹如何使用Vue框架來實現按鈕倒數特效,並給出具體的程式碼範例。首先,我們需要建立一個Vue元件,包含一個按鈕和倒數計時的功能。在Vue中,元件是一種可重複使用的Vue實例,視圖會

See all articles