CSS的復(fù)選框通常看起來(lái)都是方方正正的,沒有什么美觀度可言。但是,如果你想讓它們透明并展示背景顏色怎么辦呢?下面我們就來(lái)看看如何使用CSS實(shí)現(xiàn)復(fù)選框透明:
input[type="checkbox"] { opacity: 0; position: absolute; z-index: -1; width: 0; height: 0; } label { position: relative; padding-left: 25px; cursor: pointer; font-size: 16px; } label:before { content: ""; display: inline-block; position: absolute; left: 0; top: 3px; width: 17px; height: 17px; background-color: #fff; border: 2px solid #aaa; border-radius: 3px; } input[type="checkbox"]:checked + label:before { content: "?"; color: #fff; text-align: center; line-height: 15px; background-color: #4CAF50; }
首先,我們將復(fù)選框的不透明度設(shè)置為0,將其移出到視圖之外,確保復(fù)選框自身不可見。然后為label元素設(shè)置一個(gè)相對(duì)定位,并讓其內(nèi)部的文本左邊距離為25px,為其之后的偽元素留出空間。接著,在label之前添加一個(gè)偽元素,設(shè)置它的絕對(duì)定位,并設(shè)置一個(gè)合適的大小、顏色和樣式來(lái)模擬復(fù)選框,最后設(shè)置checked的狀態(tài)來(lái)改變復(fù)選框的樣式即可。
總的來(lái)說(shuō),使用CSS來(lái)讓復(fù)選框透明是一件非常簡(jiǎn)單的事情,只需要一些關(guān)于偽元素、絕對(duì)定位和checked狀態(tài)的基礎(chǔ)知識(shí)即可。希望本文能夠幫助到你,根據(jù)你的需要自由的DIY你自己的復(fù)選框樣式。