html - 有没有办法用纯 css 来设置复选框或单选按钮的样式,即使用类?

标签 html css

有没有一种方法可以使用纯 css 来设置复选框或单选按钮的样式,即不使用 jQuery 的 class="newstyle"?我一直在网上搜索,我想知道是否有办法只用 class=""属性来实现这一点。这是一个例子:http://www.filamentgroup.com/examples/customInput/

编辑:我目前的实现方式:

<div class="styled-checkbox">
 <input type="checkbox" id="checkbox1" value="1" />
 <label for="checkbox1"><span></span>Test</label>
</div>

但是,不确定这是否是实现此目标的正确方法,来自 兼容性的 Angular ,此外,div需要预先设置 默认宽度,如果自动,它将填充 DOM。

最佳答案

只用一个类就可以达到你想要的效果,但是说你给checkbox设置样式是不对的,因为它不能直接通过CSS来设置样式。这是因为该组件由操作系统控制,而不是由浏览器本身控制。

解决方法是使用一组普通元素来模拟复选框的外观。

在您提供的链接中的特定示例中,复选框完全隐藏,因为它通过 z-index 保留在其标签后面,其背景包含复选框图形的改进版本。结合以下事实,如果您对复选框和标签使用 id\for 属性对,同时单击标签(显示复选框的图像)复选框将更改其选中/未选中状态。

关于html - 有没有办法用纯 css 来设置复选框或单选按钮的样式,即使用类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15030893/

相关文章:

css - 删除父 div 的边框时,子 div 会丢失边距

html - 自行调整大小的 div 故障排除

Javascript样式第n个 child

javascript - 捆绑 onclick() 函数,使用事件监听器更改

javascript - 工具提示 jquery 始终存在

jquery - CSS 的定位问题

html - 如何通过 CSS 在文本后面添加一个突出显示,使其看起来像下面的 Instagram-one?

css - 如何使用 Bootstrap 设置表单字段大小?

javascript - Flexbox 中的可拖动拆分 Pane 窗口无法通过子元素

php - 表单发送 GET 而不是 POST