在網頁開發中,我們經常會用到radio(單選框)來讓用戶選擇某個選項。但是有時我們希望將其樣式隱藏,這里我們可以使用 CSS 來實現。
首先,我們可以將 radio 的 opacity 設置為 0,這樣它就不可見了。但是,這樣還是可以點擊它來選中或取消選中,為此我們需要將它的大小設置為 0,這樣它就完全消失了。
input[type="radio"] { opacity: 0; width: 0; height: 0; }
接下來,我們可以使用 CSS 來為選項設置樣式。我們可以使用偽類 :before 和 :after 來設置選中和未選中的樣式,然后使用 label 元素來控制選中狀態。
input[type="radio"] + label:before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 5px; background-color: #ddd; border-radius: 50%; vertical-align: middle; } input[type="radio"]:checked + label:before { background-color: #f00; }
上面的代碼中,我們使用了偽類 :before 來為選項設置未選中的樣式,然后使用偽類 :checked 和 label 元素來控制選中狀態, :checked 偽類表示選中狀態。
最后,我們可以將 label 元素的字體大小設置為 0,這樣它就不會顯示在頁面上。
label { font-size: 0; }
這樣就實現了單選框的隱藏樣式。需要注意的是,如果要使用偽類 :before 或 :after,需要使用 content 屬性來指定內容。
上一篇css將變單居中