純css3開發(fā)的checkbox、radio和switch

2018-06-19 18:29 更新
      隨著CSS3的出現(xiàn),我們可以自由的去美化radio和checkbox。當(dāng)然,如果你嫌自己開發(fā)麻煩,網(wǎng)上已經(jīng)有很多比較完善的表單插件,比如:iCheck

在這篇文章,并不是介紹某個插件,主要是分享一下實現(xiàn)純css3開發(fā)的checkbox、radio和switch的思路。

先看例子:


上面的radio、checkbox和switch是不是比默認(rèn)的好看多了,其實,三種的設(shè)計思路和布局基本是一樣的:

布局:用label將input和div包裹,利用label的 for 屬性和 input 的id關(guān)聯(lián)起來。
樣式:將input設(shè)置為 display:none ,利用 :checked 選擇器來變換選擇和未選擇的樣式。

選擇框里的勾是利用阿里巴巴的字體圖標(biāo)。

//radio

<label for="radio3" class="tg-icheck-radio tg-icheck-flat-radio">   

  <input type="radio" id="radio3" name="sex1" checked>   

  <div class="tg-icheck-media"></div>   

  <div class="tg-icheck-inner">   

    <div class="tg-icheck-title">男</div>   

  </div>   

</label>


//checkbox

<label for="checkbox1" class="tg-icheck-checkbox">   

  <input type="checkbox" id="checkbox1" checked>   

  <div class="tg-icheck-media"></div>   

  <div class="tg-icheck-inner">   

    <div class="tg-icheck-title">籃球</div>   

  </div>   

</label>


//switch

<label class="tg-switch tg-switch-3" for="switch1">   

  <input type="checkbox" id="switch1">   

  <div class="tg-switch-media">   

    <span class="switch-label"></span>   

  </div>   

  <div class="tg-switch-inner">switch1</div> </label>


radio選擇時的樣式:

.tg-icheck-radio > input:checked + .tg-icheck-media {   

  border-color: #009a61;   

  background: #009a61;  

}


注意:當(dāng)你定義radio時,一定要定義name屬性


總結(jié)

美化radio和checkbox的方式有很多種,只要知道了原理,你就可以實現(xiàn)屬于你自己的獨(dú)特風(fēng)格頁面。



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號