一个挺好的复选框样式,单选框也一样适用

@-moz-keyframes dothabottomcheck {
  0% {
    height: 0;
  }

  100% {
    height: 15px;
  }
}
@-webkit-keyframes dothabottomcheck {
  0% {
    height: 0;
  }

  100% {
    height: 15px;
  }
}
@keyframes dothabottomcheck {
  0% {
    height: 0;
  }

  100% {
    height: 15px;
  }
}
@keyframes dothatopcheck {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: 30px;
  }
}
@-webkit-keyframes dothatopcheck {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: 30px;
  }
}
@-moz-keyframes dothatopcheck {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: 30px;
  }
}
input[type=radio] {
  display: none;
}

.check-box {
  height: 30px;
  width: 30px;
  background-color: transparent;
  border: 4px solid black;
  border-radius: 2px;
  position: absolute;
  display: inline-block;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-transition: border-color ease 0.2s;
  -o-transition: border-color ease 0.2s;
  -webkit-transition: border-color ease 0.2s;
  transition: border-color ease 0.2s;
  cursor: pointer;
  margin-top: 8px;
}
.check-box::before, .check-box::after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  height: 0;
  width: 5px;
  background-color: #6495ED;
  display: inline-block;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  border-radius: 2px;
  content: ' ';
  -webkit-transition: opacity ease .5;
  -moz-transition: opacity ease .5;
  transition: opacity ease .5;
}
.check-box::before {
  top: 19px;
  left: 11px;
  box-shadow: 0 0 0 2px #ffffff;
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.check-box::after {
  top: 9px;
  left: 0px;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

input[type=radio]:checked + .check-box,
.check-box.checked {
  border-color: #6495ED;
}
input[type=radio]:checked + .check-box::after,
.check-box.checked::after {
  height: 10px;
  -moz-animation: dothabottomcheck 0.2s ease 0s forwards;
  -o-animation: dothabottomcheck 0.2s ease 0s forwards;
  -webkit-animation: dothabottomcheck 0.2s ease 0s forwards;
  animation: dothabottomcheck 0.2s ease 0s forwards;
}
input[type=radio]:checked + .check-box::before,
.check-box.checked::before {
  height: 10px;
  -moz-animation: dothatopcheck 0.4s ease 0s forwards;
  -o-animation: dothatopcheck 0.4s ease 0s forwards;
  -webkit-animation: dothatopcheck 0.4s ease 0s forwards;
  animation: dothatopcheck 0.4s ease 0s forwards;
}



<input value="1" type="radio" name="MoreApply" id="isMoreApply">
<label for="isMoreApply" class="check-box"></label>


复选框和单选框的切换就是把样式中input[type=radio]换成input[type=checkbox]


样式效果图





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElementUI提供了单选框Radio)组件,它是基于Vue 2.0的桌面端组件库,适用于开发者、设计师和产品经理使用。你可以在ElementUI的官方文档中找到有关单选框的详细信息和使用方法。 使用ElementUI的单选框组件,你可以轻松实现单选功能。当你点击单选框中的选项时,该选项将被选中。如果你再次点击已选中的选项,它将取消选中,实现反选功能。此外,你还可以手动点击全否功能,即将所有选项都取消选中,达到全不选的效果。如果你希望一键全选或全否功能,可以在文末提供的代码中实现。 如果你想使用复选框样式来实现单选功能,而又不想自定义修改样式,可以按照以下方法操作: - 首先,使用ElementUI的单选框组件。 - 然后,在单选框组件上添加类名"el-checkbox",这样可以让单选框显示复选框样式。 通过以上方法,你可以实现使用ElementUI的单选框组件来达到单选功能,并且获得复选框样式,而无需自定义修改样式。希望这对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [vue项目elementui 的 el-checkbox复选框改成单选框样式:实现全选、全否、单选、反选功能(最简单的方法)](https://blog.csdn.net/qq_22182989/article/details/121370682)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值