天天看点

表单元素——checkbox样式美化三、总结

表单元素——checkbox样式美化三、总结
表单元素——checkbox样式美化三、总结
表单元素——checkbox样式美化三、总结

模拟实现一个选中和未选中的样式。

没有样式时的效果图如下,

表单元素——checkbox样式美化三、总结

最终添加样式后效果如下。

表单元素——checkbox样式美化三、总结

实际开发中,我尝试使用这种方法。

这种方法有个问题:点选框时无法选中,必须点文字才能选中 。

这在实际应用中肯定是无法忍受的,实际应用中推荐第二种方法。

用到图片:

表单元素——checkbox样式美化三、总结
表单元素——checkbox样式美化三、总结

原理:label和input外面套一层.custom-checkbox作为父元素相对定位。

input绝对定位于左上角,label也绝对定位于左上角,覆盖input的方块。通过给label设置padding-left和背景图来模拟未选中状态。选中时加一个.right类更改背景图片为选中状态的背景图。

通过js点击事件,label被点击时在选中与未选中状态切换。

表单元素——checkbox样式美化三、总结
表单元素——checkbox样式美化三、总结

问题:点击频率过快,会双击选中文字,影响用户体验。 

解决办法:

 效果:

表单元素——checkbox样式美化三、总结

单选框样式和复选框原理是类似的。上面办法都是一种模拟实现。

还有一点我想说的是推动前端技术发展的,不仅有前端同行们,还有我们可爱的设计师们。如果只有前端,我们会停留在已有技术的可行性上做一些保守的效果,但是有了设计师的“完美主义”,让我们脑洞大开,挑战自我,促进技术更上一层楼。

继续阅读