自定义小程序原生checkbox样式
由于项目有设计稿,要精确还原设计稿的话,本来是打算自己写一个,写是写了,大概原理就是
- 隐藏原来的checkbox;
- 做自己的checkbox样式(比如一个圆圈⚪),通过:active选择器触发样式的更改;
- 内部元素(比如一个对勾✔),通过伪元素来添加;
后来网上找了一下发现,微信的实现貌似也是类似啊,我直接用下面代码覆盖它的就行了。
/*checkbox 整体大小 */
checkbox {
}
/*checkbox 选项框大小 */
checkbox .wx-checkbox-input {
width: 40rpx;
height: 40rpx;
border-radius: 50%;
border: 3px solid #ccc;
}
/*checkbox选中后样式 */
checkbox .wx-checkbox-input.wx-checkbox-input-checked {
border: 3px solid #8dc21f;
background: #8dc21f;
}
/*checkbox选中后图标样式 */
checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
width: 28rpx;
height: 28rpx;
line-height: 28rpx;
text-align: center;
font-size: 26rpx;
color: #fff;
background: transparent;
transform: translate(-50%, -50%) scale(1);
-webkit-transform: translate(-50%, -50%) scale(1);
}