移动端 CSS3动画属性
一、transform 转换属性
#1. translate位移
transform : translate(50px,100px); //把元素水平移动 50 像素,垂直移动 100 像素
transform : translateX(50px); //把元素水平移动 50 像素
transform : translateY(100px); //把元素垂直移动 100 像素
#2. scale缩放
transform : scale(2); //把元素宽高同时放大两倍
transform : scale(2,4); //把元素宽度放大2倍,高度放大4倍
transform : scaleX(0.5); //把元素宽度缩小一半
transform : scaleY(1.2); //把元素高度放大1.2倍
#3. rotate旋转
transform : rotate(45deg); //把元素旋转45deg
transform : rotateX(45deg); //把元素沿X轴旋转45deg
transform : rotateY(45deg); //把元素沿X轴旋转45deg
#4. skew倾斜
transform : skew(30deg,20deg); //把元素沿水平方向倾斜30deg,沿垂直方向倾斜20deg
transform : skewX(30deg); //把元素沿水平方向倾斜30deg
transform : skewY(20deg); //把元素沿垂直方向倾斜20deg
每个元素只能设置一个transform属性,可以同时设置多个值,如:
transform: rotate(30deg) translate(50px) scale(2);
#二、transition 过渡属性
transition-property : css的属性名称 或者all
transition-duration : 动画持续的时间
transition-timing-function : 动画的执行的速度
ease:平滑运动
linear:线性运动
ease-in:逐渐加速 速度越来越快
ease-out:逐渐减速速 速度越来越慢
ease-in-out:先加速再减速 速度先变快再变慢
transition-delay : 动画延迟时间
transitionend css过渡效果结束后执行的事件
一般不分开设置,直接写复合属性, transition: all 2s linear 2s;
2
3
#三、animation 关键帧动画
#1. 定义动画
@keyframes 动画名{
0%{ ... }
50%{ ... }
100%{ ... }
}
//开始状态和结束状态时,可以用from 和 to代替
#2. 调用动画
animation-name: 动画名称
animation-duration: 动画持续的时间
animation-timing-function: 动画的执行的速度,与transition属性相同
animation-delay: 延迟时间
animation-iteration-count: 动画执行的次数,可以是数字或者infinite(无限循环)
animation-direction: 是否循环交替反向播放动画,
normal( 正常播放 )
alternate(奇数次正向,偶数次反向)
alternate-reverse (奇数次反向,偶数次正向)
reverse( 反向播放 )
animation-fill-mode: 动画填充的模式,
forwards(动画结束后停在最后的位置)
backwards(保留动画开始的初始状态)
animation-play-state: 动画是否暂停,
running( 继续 )
paused( 暂停 )
#3. 请求动画帧 requestAnimationFrame
1. 屏幕刷新频率:屏幕每秒出现图像的次数。普通笔记本为60Hz(赫兹)
2. 动画原理:计算机每16.7ms刷新一次,由于人眼的视觉停留,所以看起来是流畅的移动。
3. 通过定时器达到的动画效果,容易卡顿抖动,原因是:
1、setTimeout异步加载,只有当主线程任务执行完后才会执行,因此实际执行时间总是比设定时间要晚
2、settimeout的固定时间间隔不一定与屏幕刷新时间相同,会引起丢帧
4. 每次刷新的间隔中会执行一次requestAnimationFrame函数,不会引起丢帧,不会卡顿
移动端 CSS3动画属性的更多相关文章
- CSS3动画属性animation的用法
转载: 赞生博客 高端订制web开发工作组 » CSS3动画属性animation的用法 CSS3提供了一个令人心动的动画属性:animation,尽管利用animation做出来的动画没有flash ...
- Css3动画属性总汇
http://css3lib.alloyteam.com/uilib/animation/demo1/#cta Css3动画属性总汇 Stay hungry. Stay foolish. Attent ...
- CSS3动画属性和flex弹性布局各个属性
[CSS3动画的使用] 1.声明一个关键帧(动画): @keynames name{ from{} to{} } 每个阶段的写法: ①可以直接使用from-to的写法 ②可以设置0%-100%的写法, ...
- WEB 移动端 CSS3动画性能 优化
很多时候,我们在开发移动端的时候要使自己的网页兼容不同的机型,很多时候会采用CSS3动画,但是很多时候在安卓机下,动画明显会出现卡顿,很难看,那么这里我介绍几个CSS 属性进行硬件加速那么就会得到明显 ...
- CSS3动画属性Transform解读
无论你是前端还是设计师,相信你在网页二维空间上的操作早已经得心应手,JS处理时间线的动画也早已经 烂熟于胸.从今天开始,我跟大家分享一些“新”的东西,网页的第三个维度,以及纯CSS实现的动画.限于篇幅 ...
- 使用CSS3动画属性实现360°无限循环旋转【代码片段】
使用CSS3的animation动画属性实现360°无限循环旋转. 代码片段: <div id="test"> <img src="/CSS3/img/ ...
- 如何制作css3的3d动画——以骰子旋转为例,详解css3动画属性
首先先来看两个用css3实现的炫酷的3d动画效果 1 2 3 4 5 6 你没看错,这个炫酷的效果都是用css3实现的. 下面是动画实现所需要用到的几个css3属性. 1.perspective: ...
- 使用CSS3动画属性实现各种旋转跳跃
Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix. tran ...
- CSS3动画属性之Animation
首先定义一个动画规则: @keyframes mymove { from {top:0px;} to {top:200px;} } @-moz-keyframes mymove /* Firefox ...
随机推荐
- 深度分析:面试90%被问到的 Session、Cookie、Token,看完这篇你就掌握了!
Cookie 和 Session HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录:Session 和 Cookie 的主要目的 ...
- Codeforces741D
dsu on tree 题目链接 点我跳转 题目大意 一棵根为 \(1\) 的树,每条边上有一个字符(\(a-v\)共\(22\)种) 一条简单路径被称为Dokhtar-kosh当且仅当路径上的字符经 ...
- Markdown特点
前言 以前经常在 gitHub 中看到 .md 格式的文件,一直没有注意,也不明白为什么文本文档的后缀不是 .txt ,后来无意中看到了 Markdown,看到了用这个东西写得一些web界面等特别的规 ...
- 再论<? extends T>和<? super T>
参考: https://www.cnblogs.com/drizzlewithwind/p/6100164.html Java 泛型 <? super T> 中 super 怎么 理解?与 ...
- 机场&代理商-关系图
机场&代理商-关系图 思路 ①首先统计机场活跃度Top10的机场名称,以下是我的表结构,以及查询语句 表结构: 查询语句:SELECT * from 2020csale ORDER BY cn ...
- 软件工程与UML第二次作业
博客班级 https://edu.cnblogs.com/campus/fzzcxy/2018SE2/ 作业要求 https://edu.cnblogs.com/campus/fzzcxy/2018S ...
- Django的静态文件的配置
静态文件配置 STATIC_URL = '/static/' # 静态文件配置 STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static') ] # 暴露给 ...
- JavaScript原型链及其污染
JavaScript原型链及其污染 一.什么是原型链? 1.JavaScript中,我们如果要define一个类,需要以define"构造函数"的方式来define: functi ...
- Centos7安装Kubernetes k8s v1.16.0 国内环境
一. 为什么是k8s v1.16.0? 最新版的v1.16.2试过了,一直无法安装完成,安装到kubeadm init那一步执行后,报了很多错,如:node xxx not found等.centos ...
- PyQt(Python+Qt)学习随笔:设定toolButton弹出菜单的方法
在Qt Designer中toolButton可以通过popupMode设定菜单弹出的模式,但并不能在Qt Designer中指定toolButton的弹出菜单,toolButton只能通过代码来指定 ...