以下是一个使用HTML5自定义单选框的示例:
<style> .custom-radio { display: inline-block; position: relative; padding-left: 30px; margin-bottom: 15px; cursor: pointer; font-size: 18px; user-select: none; } .custom-radio input { position: absolute; opacity: 0; cursor: pointer; } .custom-radio .checkmark { position: absolute; top: 0; left: 0; height: 20px; width: 20px; background-color: #eee; border-radius: 50%; } .custom-radio:hover .checkmark { background-color: #ccc; } .custom-radio input:checked ~ .checkmark { background-color: #2196F3; } .custom-radio .checkmark:after { content: ""; position: absolute; display: none; } .custom-radio input:checked ~ .checkmark:after { display: block; } .custom-radio .checkmark:after { top: 6px; left: 6px; width: 8px; height: 8px; border-radius: 50%; background: white; } </style> <label class="custom-radio">选项一 <input type="radio" name="radioButton" checked="checked"> <span class="checkmark"></span> </label> <label class="custom-radio">选项二 <input type="radio" name="radioButton"> <span class="checkmark"></span> </label>
该示例使用CSS创建单选框的美化样式。每个单选框都是一个label
元素,其中包含一个input
元素和一个自定义的span
元素。CSS设置input
元素不可见,样式应用于span
元素上。样式根据input
元素的选中状态改变。 name
属性保证单选框在同一组中。