微信小程序文字混合、填充动画有效果图

效果图

.wxml

复制代码
<view class="text" style="--deg:{{deg}}deg;">
  <view>混合父级颜色</view>
</view>
<view class="fill {{status?'action':''}}">文字颜色填充</view>
<button bind:tap="setStatus">{{status?'暂停':'开始'}}</button>

.js

复制代码
Page({
  data: {
    status:false,
    deg:0
  },
  setStatus(){
    var that = this
    const status = !that.data.status
    if(status){
      that.data.time = setInterval(function() {
        var deg = that.data.deg
        that.setData({
          deg:deg > 350?10:deg+10
        })
      },100)
    }else{
      clearInterval(that.data.time)
    }
    that.setData({
      status
    })
  },
})

.wxss

复制代码
.text{
  padding:50rpx 0;
  background: linear-gradient(var(--deg), #000 50% , #fff 50%);
}
.text>view{
  /* 元素的混合模式
  multiply   相乘:元素乘以背景并替换背景颜色,生成的颜色始终与背景一样暗;
  overlay    叠加:根据背景颜色对内容进行倍增或屏蔽,这与硬光混合模式相反;
  screen     屏幕:将背景和内容相乘,然后补充结果。这将导致内容比背景颜色更亮;
  difference 差值:这将从最亮的颜色中减去两种颜色中较深的一种;
  color      颜色混合:根据内容的色调和饱和度以及背景的亮度创建颜色;
  */
  mix-blend-mode: difference;
  text-align: center;
  color: #fff;
}

.fill{
  width: fit-content;
  margin: 50rpx auto;
  background:linear-gradient(135deg, #e54d42 10% , #f37b1d 20%, #fbbd08 30%, #8dc63f 40%, #39b54a 50%,
  #1cbbb4 60%, #0081ff 70%, #6739b6 80%, #9c26b0 90%, #e03997 100%);
  font-weight:700;
  /* 文字颜色填充 */
  -webkit-text-fill-color: transparent;
  /* 背景绘制区域 */
  -webkit-background-clip:text;
}
.fill.action{
  animation: filter infinite 3s;
}
/* 颜色旋转 */
@keyframes filter{
  from {
    filter:hue-rotate(360deg)
  }
  to {
    filter:hue-rotate(0deg)
  }
}
相关推荐
拖孩6 小时前
流量主门槛从 500 降到 100,我的小程序上线 18 小时够到了线
前端·后端·微信小程序
云-缩影7 小时前
做微信小程序,自建服务器还是用云托管:技术选型对比
服务器·微信小程序·小程序
志尊宝11 小时前
AI原生前端开发(043):AI辅助的样式生成(Tailwind CSS)
前端·css·ai-native
极限挑战哥1 天前
共享电单车联营平台分账架构实践:二清合规与自动分账零人工方案
java·大数据·人工智能·微信小程序·架构·微信公众平台
java1234_小锋1 天前
【技术专题】CSS3 网页技术 - CSS3 布局进阶
前端·css·css3
云-缩影1 天前
拆解微信小程序后端架构:ECS、RDS、SSL 和 VPC 怎么配合
微信小程序·架构·ssl
拖孩1 天前
AI 帮我写的小程序上线 44 天:36 个人进了收银台,8 个人付钱
前端·后端·微信小程序
java1234_小锋1 天前
【技术专题】CSS3 网页技术 - CSS3 视觉增强
前端·css·css3
晓得迷路了1 天前
栗子前端技术周刊第 152 期 - Rspack 2.3、TypeScript 7.1 Beta、Bun 1.4.4...
前端·javascript·css
普通人61 天前
CSS-box-sizing-使用指南
开发语言·前端·css·1024程序员节