当前位置: 首页 > news >正文

css animation 动画属性

animation

// 要绑定的关键帧规则名称
animation-name: slidein;// 定义动画完成一个周期所需的时间,秒或毫秒
animation-duration: 3s;// 定义动画速度曲线
animation-timing-function: ease;// 定义动画开始前的延迟时间
animation-delay: 1s;// 定义动画播放次数:n 具体次数;infinite:无限循环;
animation-iteration-count: infinite;// 定义动画是否反向播放
animation-direction: normal;// 定义动画再执行前后如何应用样式
animation-fill-mode: forwards;// 控制动画播放状态:running 正在播的;paused 暂停;
animation-play-state: running;// 简写 animation 属性
// animation: name duration timing-function delay iteration-count direction fill-mode play-state;


animation-timing-function: ease;(定义动画速度曲线)

ease

(默认)慢-快-慢
linear匀速
ease-in慢开始
ease-out慢结束
ease-in-out满开始、慢结束
cubic-bezier(n, n, n, n)自定义曲线

animation-direction: normal;(定义动画是否反向播放)

normal正常播放
reverse反向播放
alternate轮流正反向
alternate-reverse先反向、后正向 轮流

animation-fill-mode: forwards;(定义动画再执行前后如何应用样式)

none(默认)不应用任何样式
forwards保持最后一帧样式
backwards应用第一帧样式(考虑 delay)
both同时应用 forwards 和 backwards

 @keyframes 规则

// 定义动画的关键帧
@keyframes slidein{from {transform: translateX(0%);}50% {transform: translateX(50%);opacity: 0.5;}to {transform: translateX(100%)opacity: 1;}
}

性能考虑

优先使用 transform 和 opacity 属性进行动画,这些属性可以由浏览器高效处理;

避免动画过多元素,可能导致性能问题;

使用 will-change 属性预先告知浏览器哪些元素会变化;

.element {will-change: transform, opacity;
}

CSS will-change 属性详解

是一个性能你优化属性,它允许开发者提前告知浏览器哪些元素属性即将发生变化,让浏览器可以提前做好优化准备。

/* 基本语法 */
will-change: auto | <animateable-feature> | scroll-position | contents;
auto默认值,表示浏览器不会做任何特殊优化
ps. transform  opacity ...特定属性,指即将变化的CSS属性名称
scroll-position表示元素的滚动位置即将改变
contents表示元素的内容即将改变

http://www.xdnf.cn/news/317179.html

相关文章:

  • 华为昇腾910B通过vllm部署InternVL3-8B教程
  • 大模型系列(五)--- GPT3: Language Models are Few-Shot Learners
  • IPFS集群部署
  • Linux/AndroidOS中进程间的通信线程间的同步 - 信号量
  • Java游戏服务器开发流水账(1)游戏服务器的架构浅析
  • Wireshark抓账号密码
  • 一文走进GpuGeek | conda常用命令
  • Prompt(提示词)工程师,“跟AI聊天”
  • Java版ERP管理系统源码(springboot+VUE+Uniapp)
  • FID和IS的区别
  • STM32裸机开发问题汇总
  • (1-1)Java的JDK、JRE、JVM三者间的关系
  • 淘宝按图搜索商品(拍立淘)爬虫实战指南
  • 技术视界|青龙机器人训练地形详解(二):添加地形到训练环境
  • 光伏“531”政策倒逼下,光储充一体化系统如何破解分布式光伏收益困局?
  • sql错题(3)
  • 学习记录:DAY23
  • 发那科机器人3(机器人编程基础)
  • Python小酷库系列:5个常用的dict属性化访问扩展库
  • Kubernetes调度技术:污点与容忍生产级应用指南
  • Selenium使用指南
  • 7.2.安全防御
  • 一个项目的周测试的文档(Billing Service 测试文档)
  • pcie协议复位
  • 1688拍立淘搜索相似商品API接口概述,json数据示例参考
  • 适合java程序员的Kafka消息中间件实战
  • 用 NGINX 打造高性能 FastCGI 加速 `ngx_http_fastcgi_module`
  • 深入理解Java三大特性:封装、继承和多态
  • 国家信息中心:基于区块链和区块链服务网络(BSN)的可信数据空间建设指引
  • jenkins配置多nexus仓库多maven版本