微信小程序实现登录页云层漂浮的动画效果

发布时间 - 2026-01-11 00:59:24    点击率:

前言

2017年前端火了,微信小程序、weex、reactnative,就连支付宝也搞起了小程序,总感觉这是原生要毁灭的节奏啊,我也乘热上车万一波。

上效果图(GIF动态图)

当我看到这张背景图的时候,强迫症立马来了,这云朵为什么不动,于是开始了一波折腾。

知识点

认识animation

animation 属性是一个简写属性,用于设置六个动画属性:

描述
animation-name 规定需要绑定到选择器的 keyframe 名称
animation-duration 规定完成动画所花费的时间,以秒或毫秒计
animation-timing-function 规定动画的速度曲线
animation-delay 规定在动画开始之前的延迟
animation-iteration-count 规定动画应该播放的次数
animation-direction 规定是否应该轮流反向播放动画

认识translate

方法特别多,本文主要用2个。

  • translate3d(x,y,z)定义 3D 缩放转换。
  • rotate3d(x,y,z,angle) 定义 3D 旋转。

translate3d(1,1,0)

你可以理解为(左右,上下,大小)变化。

rotate3d(1,1,0,45deg)


实现

1.两朵云除了大小和初始位置不通,其他都相同。

.cloud {
 position: absolute;
 z-index: 3;
 width:99px;height:64px; top: 0; 
 right: 0;
 bottom: 0;
 animation: cloud 5s linear infinite;
}

@keyframes cloud {
 from {
 transform: translate3d(-125rpx, 0, 0);
 }

 to {
 transform: translate3d(180rpx, 0, 0);
 }
}

其中rpx是微信特有的属性,不受屏幕大小的影响,类似于安卓里的dp单位。keyframes是匀速移动,从css里可以看到只改变了左右方向。

2.头像本来想加个吊篮,像荡秋千一样的荡漾,但是没有成功,只是随便搞了个飘来飘去的动画。

代码如下

@keyframes pic {
 0% {
 transform: translate3d(0, 20rpx, 0) rotate(-15deg);
 }
 15% {
 transform: translate3d(0, 0rpx, 0) rotate(25deg);
 }
 36% {
 transform: translate3d(0, -20rpx, 0) rotate(-20deg);
 }
 50% {
 transform: translate3d(0, -10rpx, 0) rotate(15deg);
 }
 68% {
 transform: translate3d(0, 10rpx, 0) rotate(-25deg);
 }
 85% {
 transform: translate3d(0, 15rpx, 0) rotate(15deg);
 }
 100% {
 transform: translate3d(0, 20rpx, 0) rotate(-15deg);
 }
}

没想到keyframes不仅有支持from to还支持百分比,不错。这里,只要控制好层级关系、动画时长、透明度即可实现云层漂浮。

总结

不得不说css还是有很多动画的,也有很多特效,微信小程序里加一点动画,能使页面稍微美观点。当然,复杂点的动画,只能有机会再更新。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# 微信小程序  # 漂浮  # 动画  # 微信小程序登录demo  # 微信小程序实现元素渐入渐出动画效果封装方法  # 微信小程序 小程序制作及动画(animation样式)详解  # 微信小程序的动画效果详解  # 微信小程序 连续旋转动画(this.animation.rotate)详解  # 微信小程序实现animation动画  # 微信小程序scroll-view组件实现滚动动画  # 微信小程序loading组件显示载入动画用法示例【附源码下载】  # 微信小程序开发animation心跳动画效果  # 微信小程序开发之录音机 音频播放 动画实例 (真机可用)  # 微信小程序实现渐入渐出动画效果  # 里加  # 是一个  # 这是  # 吊篮  # 我也  # 来了  # 也有  # 好了  # 你可以  # 是有  # 当我  # 这张  # 不受  # 不动  # 就连  # 可以看到  # 他都  # 这篇文章  # 特有的  # 能使 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 米侠浏览器网页背景异常怎么办 米侠显示修复  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  移动端脚本框架Hammer.js  如何做网站制作流程,*游戏网站怎么搭建?  Laravel如何处理和验证JSON类型的数据库字段  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  如何在万网自助建站平台快速创建网站?  如何用搬瓦工VPS快速搭建个人网站?  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】  如何快速搭建高效WAP手机网站?  制作电商网页,电商供应链怎么做?  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  如何在阿里云虚拟主机上快速搭建个人网站?  Laravel如何自定义错误页面(404, 500)?(代码示例)  如何挑选高效建站主机与优质域名?  如何选择可靠的免备案建站服务器?  javascript日期怎么处理_如何格式化输出  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何获取上海专业网站定制建站电话?  青岛网站建设如何选择本地服务器?  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  Bootstrap整体框架之JavaScript插件架构  Laravel如何实现API版本控制_Laravel版本化API设计方案  PHP 500报错的快速解决方法  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  大同网页,大同瑞慈医院官网?  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  电商网站制作价格怎么算,网上拍卖流程以及规则?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?  Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  制作企业网站建设方案,怎样建设一个公司网站?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  浅述节点的创建及常见功能的实现  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  如何快速生成凡客建站的专业级图册?  如何彻底删除建站之星生成的Banner?  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  微信公众帐号开发教程之图文消息全攻略