按鈕開關(guān)動畫在網(wǎng)頁設(shè)計中常常出現(xiàn)。利用 CSS 編寫按鈕開關(guān)動畫,會使網(wǎng)頁內(nèi)容更加豐富多彩。下面看一下 CSS 實現(xiàn)按鈕開關(guān)動畫的代碼:
.switch { position: relative; display: inline-block; width: 60px; height: 34px; } .switch input { display: none; } .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; } .slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 4px; bottom: 4px; background-color: white; transition: .4s; } input:checked + .slider { background-color: #2196F3; } input:focus + .slider { box-shadow: 0 0 1px #2196F3; } input:checked + .slider:before { transform: translateX(26px); } /* Rounded sliders */ .slider.round { border-radius: 34px; } .slider.round:before { border-radius: 50%; }
上述代碼使用了 :before 和 :after 選擇器,可以使得開關(guān)按鈕更具動感。通過改變 .slider:before 的 transform 屬性,實現(xiàn)動畫效果的變化。