CSS3的过渡和动画
过渡和动画都是CSS3
的重要部分,今天有时间,了解些相关内容并记录下。
在开始之前,首先看看CSS3
的转化。
转化
CSS3
的转化分为以下几种:
- translate 移动
- rotate 旋转
- scale 缩放
- skew 倾斜
- matrix 混合
每种转化都还有对应的3d版本
注意:闭合的内联元素不支持转化,过渡和动画:如<span>、<small>、<i>等。可以通过添加样式 display: inline-block 或 display: block 来转化成块级元素。
translate 移动
translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。
span {display: inline-block;transform: translate(50px,100px); /* 向下移动50像素,向右移动100像素 */-ms-transform: translate(50px,100px); /* IE 9 */-webkit-transform: translate(50px,100px); /* Safari and Chrome */
}
rotate 旋转
rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。
i {display: block;transform: rotate(30deg); /* 顺时针旋转30度,负数为逆时针旋转 */-ms-transform: rotate(30deg); /* IE 9 */-webkit-transform: rotate(30deg); /* Safari and Chrome */
}
scale 缩放
scale()方法,该元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:
div {display: inline; /*这样设置是缩放不生效 */transform: scale(2,3); /*长扩大2倍,宽扩大3倍,小于1的小数为缩小 */-ms-transform:scale(2,3); /* IE 9 */-webkit-transform: scale(2,3); /* Safari */transform: scale(2,3); /* 标准语法 */
}
skew 倾斜
skew() 包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。(想象成一根直的柱子,被推歪了...)
- skewX(<angle>);表示只在X轴(水平方向)倾斜。(横着推歪了...)
- skewY(<angle>);表示只在Y轴(垂直方向)倾斜。(从上下压给推歪了...)
div {transform: skew(30deg,20deg);-ms-transform: skew(30deg,20deg); /* IE 9 */-webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
}
matrix 混合
matrix()方法和2D变换方法合并成一个。
matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。
div {transform:matrix(0.866,0.5,-0.5,0.866,0,0);-ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */-webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */
}
截图总结
2D 版
3D 版
transition 过渡
CSS3中,我们为了添加某种效果可以从一种样式转变到另一个的时候,无需使用Flash动画或JavaScript。
过渡和动画的区别
过渡和动画都可以改变元素的样式,但他们中间也有些不同:
- 过渡针对元素的样式属性,从一种样式转变到另一种,样式按贝塞尔曲线随时间变化,动画针对元素本身,按关键帧改变元素的样式效果
- 过渡比动画简单,当控制的效果也更粗糙,动画更消耗性能,但可以做出更复杂的效果。
总的来说:一般简单的样式使用过渡,实在需要复杂的效果再考虑使用动画
transition 属性
div {transition-property: width; /*可以使用转化更好的过渡 */transition-duration: 1s;transition-timing-function: linear;transition-delay: 2s;/* Safari */-webkit-transition-property:width;-webkit-transition-duration:1s;-webkit-transition-timing-function:linear;-webkit-transition-delay:2s;
}/*简写 */
div {transition: width 1s linear 2s;/* Safari */-webkit-transition:width 1s linear 2s;
}
transition 过渡曲线
animate 动画
CSS3,我们可以创建动画,它可以取代许多网页动画图像,Flash动画,和JAVAScripts。
动画属性:
动画制作过程
1.通过@keyframes规则创建动画
/*创建动画,字体颜色由红变蓝 */
@keyframes changeColor { from { color: red; }to { color: blue; }
}
2.元素绑定动画
span {display: inline-block; /*内联元素要转成block元素 */animation: changeColor 1s linear; /*绑定动画,并设置动画时间和执行曲线 */
}
动画还可以使用百分比来更加精细的控制动画流程:
@keyframes changeColor {0% {color: red;}25% {color: yellow;}50% {color: green;}75% {color: pickle;}100% {color: blue;}
}/* Safari 与 Chrome */
@-webkit-keyframes changeColor {0% {color: red;}25% {color: yellow;}50% {color: green;}75% {color: pickle;}100% {color: blue;}
}
CSS3的过渡和动画相关推荐
- 原 CSS3中的过渡,css3之过渡
CSS3的过渡和转换 CSS3的过渡和转换 1.过渡 什么是过渡呢?过渡通俗的来说就是从一个样式到另一个样式的逐渐转换改变的效果. 过渡的属性: 属性 描述 css transition 简写属性,用 ...
- 重新想,重新看——CSS3变形,过渡与动画①
学习CSS3,觉得最难记忆的部分除了flex特性之外,就要属变形,过渡和动画部分了.作为初学者,总有种犯懒的心理,想着既然IE8浏览器都不完全支持CSS动画属性,还要考虑浏览器兼容问题,那么就不那么着 ...
- c语言实现图片过渡效果飞入,用css3实现转换过渡和动画效果
为什么要用css动画替换js动画 导致JavaScript效率低的两大原因:操作DOM和使用页面动画. 通常我们会通过频繁的操作 DOM的CSS来实现视觉上的动画效果,导致js效率低的两个因素都包括在 ...
- css3变换、过渡与动画_带有CSS3过渡和变换的画布菜单
css3变换.过渡与动画 Now as an easy to use jQuery Plugin 现在作为易于使用的jQuery插件 介绍 ( Introduction ) Off Canvas Me ...
- CSS3 变形 过渡 动画
文章目录 CSS3 变形 过渡 动画 transform(变形) 概述 translate() 平移 scale() 缩放 skew() 倾斜 rotate() 旋转 transform-origin ...
- CSS3 过渡和动画
过渡初识 过渡:元素从一种样式变换为另一种样式时为元素添加的效果 必须要触发一个事件才能实现过渡 <!DOCTYPE html> <html lang="en"& ...
- CSS3.0(过渡、动画、弹性盒、响应式)总结(2)
过渡属性 transition:属性 时间 延迟时间 效果 property duration delay timing-function 过渡属性谁变给谁加,使用复合写法只需要写时间即可生效 ...
- css3中变形与动画(三)
transform可以实现矩阵变换,transition实现属性的平滑过渡,animation意思是动画,动漫,这个属性才和真正意义的一帧一帧的动画相关.本文就介绍animation属性. anima ...
- 神奇的css3(2)动画
四.Css3 2D动画 1.2D 转换方法 函数 描述 matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵. translate(x,y) 定义 2D 转换,沿着 X 和 Y ...
最新文章
- Apache Tomcat 7.0.93 发布,开源 Java Web 应用服务器
- Ext.ux.form.SearchField使用方法
- LINUX上MYSQL优化三板斧
- python中的 2%s何意_python中的%s%是什么意思
- Android学习笔记--WIFI的操作
- 计算机应用技术考试重点,复习资料:2020年江苏自考计算机应用技术考前重点练习:单项选择题二...
- 自然语言处理一大步,应用Word2Vec模型学习单词向量表征
- 我的Java后端书架
- C语言中的“悬空指针”和“野指针”是什么意思?
- 屏幕强大!一加7 Pro海外版发布:2K分辨率 90Hz刷新率
- 西门子real是什么数据类型_如何实现西门子新一代精智屏及基本屏与 S120 的直接通讯...
- 求一个特定函数在定义区间上的值是否都为素数
- Spring boot initialization failed for https://start.spring.io
- displaytag手册
- 【单片机学习笔记】(25):PID初识、门电路符号、H桥驱动电路、中断服务函数使用注意事项、SIM800C打电话发短信、OLED
- SCL教程之如何使用SCL创建简单控制程序
- 队爷的讲学计划 (强连通缩点+最短路)
- 什么是短视频电商,短视频电商的商业模式标题】
- 校园综合服务平台-微信小程序
- 支持百亿数据场景,海量高性能列式数据库HiStore技术架构解析