微信小程序三种裁剪动画有效果图

效果图

.wxml

复制代码
<image class="img inset {{status?'action1':''}}" src="{{src}}" />
<image class="img circle {{status?'action2':''}}" src="{{src}}" />
<image class="img polygon {{status?'action3':''}}" src="{{src}}" />
<button bind:tap="setClip">{{status?'正常':'裁剪'}}</button>

.js

复制代码
Page({
  data: {
    src:'https://c-ssl.dtstatic.com/uploads/blog/202302/17/20230217145103_a7fa7.thumb.1000_0.jpg',
    status:false
  },
  setClip(){
    this.setData({
      status:!this.data.status
    })
  },
})

.wxss

复制代码
page{
  text-align: center;
}
.img{
  width: 300rpx;
  height: 300rpx;
  margin: 50rpx 10rpx 0;
  transition: clip-path 0.5s;
}
/* 缩小 */
.inset{
  clip-path: inset(0);
}
.action1{
  clip-path: inset(50rpx 50rpx round 20rpx);
}
/* 圆 */
.circle{
  clip-path: circle(100%);
}
.action2{
  clip-path: circle(50%);
}
/* 多边形 */
.polygon{
  clip-path: polygon(100% 0px, 100% 100%, 0px 100%, 0px 0px);
}
.action3{
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}

遇到问题可以看我主页加我Q,很少看博客,对你有帮助别忘记点赞收藏。

相关推荐
轮子大叔3 小时前
CSS基础入门
前端·css
ShineWinsu4 小时前
CSS 技术文章
前端·css
之歆5 小时前
Day02_HTML 标签详解:从基础到实践的完整指南
css·html·div
军军君015 小时前
数字孪生监控大屏实战模板:交通云实时数据监控平台
前端·javascript·css·vue.js·typescript·前端框架·echarts
里欧跑得慢6 小时前
12. CSS滤镜效果详解:为页面注入艺术灵魂
前端·css·flutter·web
里欧跑得慢6 小时前
CSS 级联层:控制样式优先级的新方式
前端·css·flutter·web
~无忧花开~6 小时前
CSS全攻略:从基础到实战技巧
开发语言·前端·css·学习·css3
Misnice6 小时前
CSS Flex 布局中flex-shrink: 0 使用
前端·css
jjw_zyfx6 小时前
css 点击显示并移动元素,再次点击移回元素并消失
前端·javascript·css