CSS多選框方形的制作
/*html*/ <input type="checkbox" id="checkbox1" name="check1"> <label for="checkbox1"></label> /*css*/ input[type="checkbox"] { display: none; } label { display: inline-block; width: 20px; height: 20px; border: 1px solid #ccc; margin-right: 5px; } input[type="checkbox"]:checked + label:before { content: "\2713"; display: block; text-align: center; font-size: 16px; } label:before { content: ""; display: block; width: 18px; height: 18px; margin: 1px; border: 1px solid transparent; border-radius: 3px; font-size: 0; line-height: 16px; }
實現思路
1. 首先,將復選框的顯示屬性設置為none,消除原本的樣式;
2. 在label標簽中設置選框的樣式,邊框的顏色和大小,在margin-right屬性中給選框右側留出一些空白;
3. 在label:before中設置實心勾選符號的樣式,將其按中心對齊,并設置字號;
4. 使用:checked選擇器為選中的復選框添加樣式,即在勾選框前加上實心勾。
總體思路是將原生的復選框設計成一個自己定義的勾選框,利用:before選擇器以及:checked狀態(tài)實現選擇標記。