例如外帶服務區域,選擇時為多選,且一般隱藏checkbox樣式框。只留下label字體和設定的外邊框來進行選取樣式控制,以此來提升使用者體驗。
這時要對checkbox進行處理
我總結的一個方法就是根據checked去進行設定
範例:
<p> <input name="area" type="checkbox" value="1" id="check1"/> <label for="check1">桥西区</label> </p>
這裡我把checkbox和label寫在p標籤裡,這樣既可以實現點選文字選取。
選取後樣式控制:
/*选矿*/ .select-ul li p label, .type-list-ul li p label{ font-size: 0.28rem;color: #666; width: 100%;height: 100%;display: inline-block; border-color: #666; border-style: solid; border-width: 1px; border-radius: 0.1rem; } .type-list-ul li p label{width: auto;padding: 0 0.1rem;} .select-ul li p{ height: 0.5rem; width: 1.5rem; display: inline-block; line-height: 0.5rem; } .type-list-ul li p{ /*padding: 0 0.1rem;*/ height: 0.5rem; /* width: 1.5rem; */ display: inline-block; line-height: 0.5rem; } .select-ul li p input[type=checkbox]:checked + label, .type-list-ul p input[type=checkbox]:checked + label{ border-color: #FA8072; color: #FA8072; }
總結就是我透過
.select-ul li p input[type=checkbox]:checked + label{}
來控制樣式,
一般區域選擇都會讓checkbox樣式隱藏,只留下字體框,點擊後變色來提高用戶體驗
拓展:
在做網頁的時候一般會有一個需求:點擊一段文字訊息的同時選中某個checkbox
舊處理方式是在這段文字上加上點擊事件觸發checkbox的選中事
//jq中: //选中$("#ID").attr("checked","checked");//不选中$("#ID").removeAttr("checked"); //js中: var boxes = document.getElementsByName("test"); boxes[i].checked = true;
這裡提供一種便利的方法:
<p> <input name="fittype" type="checkbox" value="8" id="checkin8"/> <label for="checkin8">其他</label></p>
將input和label放在同一個標籤p中同時lable的for屬性的值等於input的id屬性值就可以實作點擊label同時控制input
#以上是html中關於checkBox選取樣式設置的詳細內容。更多資訊請關注PHP中文網其他相關文章!