0
点赞
收藏
分享

微信扫一扫

angular简易switch选择按钮

流沙雨帘 2022-03-30 阅读 67

angular简易switch选择按钮

step1: D:\vue\untitled2905\src\app\app.component.ts

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'untitled2905';
  name = false;
  viewName = '关闭';
  getData(){
    if (this.name){
      console.log('关闭');
      this.name = false;
      this.viewName = '关闭';
    }else{
      console.log('打开');
      this.name = true;
      this.viewName = '打开';
    }
  }
}

step2: D:\vue\untitled2905\src\app\app.component.html

<div class="example-con">
  <label>
  <input [ngModel]="name" type="checkbox"  class="mui-switch mui-switch-anim" value="旅游" (click)="getData()">{{viewName}}
  </label>
</div>

step3: D:\vue\untitled2905\src\app\app.component.css


.mui-switch-con {
  margin-top: 10px;
  font-size: 16px;
}

.mui-switch-con label {
  display: block
}

.mui-switch {
  width: 52px;
  height: 31px;
  position: relative;
  border: 1px solid #dfdfdf;
  background-color: #fdfdfd;
  box-shadow: #dfdfdf 0 0 0 0 inset;
  border-radius: 20px;
  background-clip: content-box;
  display: inline-block;
  -webkit-appearance: none;
  user-select: none;
  outline: none;
}

.mui-switch:before {
  content: '';
  width: 29px;
  height: 29px;
  position: absolute;
  top: 0px;
  left: 0;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.mui-switch:checked {
  border-color: #64bd63;
  box-shadow: #64bd63 0 0 0 16px inset;
  background-color: #64bd63;
}

.mui-switch:checked:before {
  left: 21px;
}

.mui-switch.mui-switch-animbg {
  transition: background-color ease 0.4s;
}

.mui-switch.mui-switch-animbg:before {
  transition: left 0.3s;
}

.mui-switch.mui-switch-animbg:checked {
  box-shadow: #dfdfdf 0 0 0 0 inset;
  background-color: #64bd63;
  transition: border-color 0.4s, background-color ease 0.4s;
}

.mui-switch.mui-switch-animbg:checked:before {
  transition: left 0.3s;
}

.mui-switch.mui-switch-anim {
  transition: border cubic-bezier(0, 0, 0, 1) 0.4s, box-shadow cubic-bezier(0, 0, 0, 1) 0.4s;
}

.mui-switch.mui-switch-anim:before {
  transition: left 0.3s;
}

.mui-switch.mui-switch-anim:checked {
  box-shadow: #64bd63 0 0 0 16px inset;
  background-color: #64bd63;
  transition: border ease 0.4s, box-shadow ease 0.4s, background-color ease 1.2s;
}

.mui-switch.mui-switch-anim:checked:before {
  transition: left 0.3s;
}

end

举报

相关推荐

0 条评论