代碼如下所示:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> .ipt { display: none; } .box { width: 74px; height: 30px; line-height: 30px; overflow: hidden; border: 1px solid #eee; border-radius: 4px; position: relative; cursor: pointer; } label {display:inline-block;} .ipt:checked + .box .switch-btn { left: 0; } .switch-btn { position: absolute; left: -37px; top: 0; width: 111px; height: 30px; transition: all 0.5s; } .switch-btn span{ width: 37px; height: 30px; display: block; text-align: center; float: left; font-size: 14px; } .on { background: #52B13C; color: white; } .white { background: white; } .off { background: #EEEEEE; } </style></head><body> <p>主要使用label+input來實現改變left的值,下面是核心代碼,意思就是<code>選中的input的兄弟節點.box下的.switch-btn元素的left會變成0px(原來是-37px);</code></p> <pre> .ipt:checked + .box .switch-btn { left: 0; } </pre> <p>當然要配合transition來實現</p> <p>下面是效果</p> <div class="wrap"> <label> <input class="ipt" type="checkbox" name="" value=""> <div class="box"> <div class="switch-btn"> <span class="on">ON</span> <span class="white"></span> <span class="off">OFF</span> </div> </div> </label> </div> <p>全部css代碼</p> <pre> .ipt { display: none; } .box { width: 74px; height: 30px; line-height: 30px; overflow: hidden; border: 1px solid #eee; border-radius: 4px; position: relative; cursor: pointer; } .ipt:checked + .box .switch-btn { left: 0; } .switch-btn { position: absolute; left: -37px; top: 0; width: 111px; height: 30px; transition: all 0.5s; } .switch-btn span{ width: 37px; height: 30px; display: block; text-align: center; float: left; font-size: 14px; } .on { background: #52B13C; color: white; } .white { background: white; } .off { background: #EEEEEE; } </pre></body></html>以上這篇label+input實現按鈕開關切換效果的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持錯新站長站。
新聞熱點
疑難解答
圖片精選