隨著互聯(lián)網(wǎng)的飛速發(fā)展,頁(yè)面的美觀性和互動(dòng)性已經(jīng)成為了網(wǎng)頁(yè)設(shè)計(jì)的重要方向之一,而CSS3的出現(xiàn)為設(shè)計(jì)人員提供了更多的選擇。其中,Checkbox動(dòng)畫是一個(gè)非常有趣且實(shí)用的特效,本文將介紹如何使用CSS3實(shí)現(xiàn)Checkbox動(dòng)畫效果。
input[type="checkbox"] { //將hide去掉即可看到Checkbox的邊框 display: none; } input[type="checkbox"] + label:before, input[type="checkbox"] + label:after { //采用偽元素實(shí)現(xiàn)Checkbox content: ""; display: inline-block; vertical-align: middle; } input[type="checkbox"] + label:before { width: 18px; height: 18px; margin-right: 10px; border: 2px solid #ddd; border-radius: 4px; } input[type="checkbox"] + label:after { content: "\2714"; font-weight: bold; font-size: 16px; color: #fff; border-radius: 4px; background-color: #ddd; padding: 2px; transition: all 0.2s ease-in-out; } input[type="checkbox"]:checked + label:before { border-color: #5ba6e8; background-color: #5ba6e8; } input[type="checkbox"]:checked + label:after { transform: scale(1.1); background-color: #5ba6e8; }
以上是CSS3 Checkbox動(dòng)畫的代碼實(shí)現(xiàn)。首先,我們將Checkbox的寬高設(shè)為0,去除Checkbox的邊框,并通過(guò)偽元素實(shí)現(xiàn)Checkbox的外觀。使用:before和:after分別實(shí)現(xiàn)Checkbox的方框和勾選符號(hào),并在:before中設(shè)定方框的大小、內(nèi)邊距、邊框顏色等屬性;:after中設(shè)定選中后的勾選符號(hào)的樣式,用transform實(shí)現(xiàn)放大的效果,background-color改變來(lái)做到顏色變換。當(dāng)Checkbox被選中時(shí),通過(guò):checked偽類實(shí)現(xiàn)樣式變化。
通過(guò)這種方式實(shí)現(xiàn)的CSS3 Checkbox動(dòng)畫效果,既有視覺(jué)效果的提升,又可以帶來(lái)交互體驗(yàn)的提高,值得我們進(jìn)一步探究。