搜索
首页web前端css教程使用CSS3变形、过渡、动画、关联属性解析

一、变形

transform:可以对元素对象进行旋转rotate、缩放scale、移动translate、倾斜skew、矩阵变形matrix。
示例:

<strong>transform: rotate(90deg) scale(1.5,0.8) translate(100px,50px) skew(45deg,45deg);<br>/*矩阵变形*/<br>matrix(<number>,<number>,<number>,<number>,<number>,<number>);<br>/*透视*/<br>perspective(length);</strong>

transition:过度属性

transition:过度效果的css属性名 过度效果时长 速度效果的速度曲线 过度效果开始时间;

<strong>transition: property duration timing-function delay;<br>/*示例*/<br>transition:1s ease all;<br>-webkit-tansition:1s ease all;<br>-moz-transition:1s ease all;<br>-o-transition:1s ease all;</strong>

rotate():二维空间旋转元素。

若元素设置了perspective值,可用rotate3d()实现三维空间内旋转。

<strong>rotateX(angele)/*相当于rotate3d(1,0,0,angle)指定在三维空间内的X轴旋转*/<br>rotateY(angele)/*相当于rotate3d(0,1,0,angle)指定在三维空间内的Y轴旋转*/<br>rotateZ(angele)/*相当于rotate3d(0,0,1,angle)指定在三维空间内的Z轴旋转*/</strong>

scale()

<strong>scaleX(<number>)/*只在X轴(水平方向)缩放元素*/<br>scaleY(<number>)/*只在Y轴(垂直方向)缩放*/<br>scaleZ(<number>)/*只在Z轴缩放,前提:元素设定透视值*/</strong>

translate([,]):移动,是位移量。

<strong>translateX(<translation-value>);/*只在X轴(水平方向)移动*/<br>translateY(<translation-value>);/*只在Y轴(垂直方向)移动*/<br>translateZ(<translation-value>);/*只在Z轴移动,前提:元素设置透视值*/</strong>

skew():倾斜

<strong>skewX(<angle>);/*只在X轴(水平)倾斜*/<br>skewY(<angle>);/*只在Y轴(垂直)倾斜*/</strong>

matrix(a,c,e,b,d,f):矩阵变形,c、e的值用正弦或余弦值表示。

a:表示scaleX(); X轴缩放
c:skewY(); Y轴倾斜
e:skewX(); X轴倾斜
b:scaleY(); Y轴缩放
d:translateX() X轴移动
f:translateY() Y轴移动

transform:matrix(<number>,<number>,<number>,<number>,<number>,<number>);

perspective():透视

<strong>.wrap{<br>    perspective:1000px; 
<br>}<br>.wrap .child{<br>    transform:perspective(1000px);<br>}</strong>

二、过渡

transition-property:过度的属性

<strong>transition-property:all;/*针对所有元素都有过度效果*/<br>transition-property:none;/*没有元素有过度效果*/<br>transition-property:ident;/*指定css属性有过度效果,例如width*/</strong>

transition-duration:过度时间
transition-delay:延迟时间,为负数时,过度动作会从该时间点开始显示,之前的动作会被截断。
transition-timing-function:过度效果,默认ease。

<strong>transition-timing-function:ease;/*缓解效果,等同于cubic-bezier(0.25,0.1,0.25,1.0)函数,既立方贝塞尔*/<br>transition-timing-function:linear;/*线性效果,等同于cubic-bezier(0.0,0.0,1.0,1.0)函数*/<br>transition-timing-function:ease-in;/*渐显效果,等同于cubic-bezier(0.42,0,1.0,1.0)函数*/<br>transition-timing-function:ease-out;/*渐隐效果,等同于cubic-bezier(0,0,0.58,1.0)函数*/<br>transition-timing-function:ease-in-out;/*渐显渐隐效果,等同于cubic-bezier(0.42,0,0.58,1.0)函数*/<br>transition-timing-function:cubic-bezier;/*特殊的立方贝塞尔曲线效果*/</strong>

三、动画

animation-name:动画名称,必须与规则@keyframes配合使用,因为动画名称由@keyframes定义,如果提供多个属性值用逗号隔开。

@keyframes相当于一个命名空间,后面跟一个名词,如果在class中的animation-name定义了与之对应的name就可以执行动画。定义动画时可直接使用关键字from和to,从一种状态过度到另一种状态。

<strong>.animation_name{<br>    left:0;<br>    top:100px;<br>    position: absolute;<br>    -webkit-animation: 0.5s 0.5s ease infinite alternate;<br>    -moz-animation: 0.5s 0.5s ease infinite alternate;<br>    -webkit-animation-name:demo;<br>    -moz-animation-name:demo;<br>}<br>@-webkit-keyframes demo{<br>    from{left:0;}<br>    to{left:400px;}<br>}<br>@-webkit-keyframes demo1{<br>    0%{left:0;}<br>    50%{left:200px;}<br>    100%{left:400px;}<br>}</strong>

animation-duration:动画时间

animation-timing-function:播放方式,取值如下:

ease:缓解效果,等同于cubic-bezier(0.25,0.1,0.25,1.0)函数,既立方贝塞尔。
linear:线性效果
ease-in:渐显效果
ease-out:渐隐效果
ease-in-out:渐显渐隐效果
step-start:马上跳转到动画结束状态
step-end:保持动画开始状态,到动画执行时间结束,马上跳转到动画结束状态
step([,[start | end]]?):第一个参数number为指定的间隔数,即把动画分为n步阶段性显示,第二个参数默认为end,设置最后一步状态,start为结束时的状态,end为开始时的状态,若设置与animation-fill-mode的效果冲突,以animation-fill-mode的设置为动画结束状态。
cubic-bezier(,,,):特殊的立方赛贝尔曲线效果

animation-delay:开始播放时间

animation-iteration-count:播放次数,取值为infinite时表示无限循环播放

animation-direction:播放方向,取值为:

normal:正常方向
reverse:动画反向运行,方向始终与normal相仿
alternate:动画会循环正反交替运动

animation-fill-mode:播放后的状态,取值:

none:默认值,不设置
forwards:结束后保持动画结束的状态
backwards:结束后返回动画开始时状态
both:结束后可遵循forwards和backwards两个规则
animation-play-state:检索或设置对象动画的状态,取值:
running:默认,运动
paused:暂停

四、关联属性

transform-origin:变形原点,transform的参照点,默认为元素的中心点。有两个参数,参数一为横坐标,参数二为纵坐标。

percentage:用百分比指定坐标值,可负
length:用长度指定坐标值,可负
left center right:水平方向取值
top center bottom:垂直方向取值

perspective-prigin:透视原点,定义在X轴和Y轴的3D元素,允许改变3D元素的底部位置,定义该属性时,它是一个元素的子元素,透视图,而不是元素本身。
注意:使用该属性必须和perspective属性一起用,只影响3D转换的元素。
取值:percentage、length、left、center、right、top、center、bottom

backface-visibility:隐藏内容的背面,默认情况下背面可见,反转后变换的内容仍然可见,当backface-visibility设置hidden时,旋转后内容将隐藏,旋转后正面将不再可见。
取值:visible、hidden
transform-style:3D呈现,设置内嵌的元素在3D空间如何呈现,有两个值:
flat:所有子元素在2D平面呈现
preserve-3d:保留3D空间








以上是使用CSS3变形、过渡、动画、关联属性解析的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
' CSS4”更新' CSS4”更新Apr 11, 2025 pm 12:05 PM

自从我第一次介绍了CSS4面中的事情以来,就已经进行了更多的讨论。我将在这里从其他人那里汇集我最喜欢的想法。有

三种代码三种代码Apr 11, 2025 pm 12:02 PM

每次启动一个新项目时,我都会将我正在查看的代码分为三种类型,或者如果您愿意的话。我认为这些类型可以应用于

https很容易!https很容易!Apr 11, 2025 am 11:51 AM

我对公开哀悼HTTPS的复杂性感到内gui。过去,我从第三方供应商那里购买了SSL证书,并且遇到了麻烦

HTML数据属性指南HTML数据属性指南Apr 11, 2025 am 11:50 AM

您想了解的有关HTML,CSS和JavaScript中数据属性的所有信息。

了解JavaScript中的不变性了解JavaScript中的不变性Apr 11, 2025 am 11:47 AM

如果您以前从未在JavaScript中使用不变性,则可能会发现很容易将其与为新值或重新分配分配变量的混淆。

具有现代CSS功能的定制样式表单输入具有现代CSS功能的定制样式表单输入Apr 11, 2025 am 11:45 AM

如今,可以在语义上且易于访问的同时构建自定义的复选框,无线电按钮和切换开关。我们甚至不需要

脚注字符脚注字符Apr 11, 2025 am 11:34 AM

有特殊的超级数字字符有时非常适合脚注。他们在这里:

如何使用HTML,CSS和JavaScript创建动画倒计时计时器如何使用HTML,CSS和JavaScript创建动画倒计时计时器Apr 11, 2025 am 11:29 AM

您是否曾经在项目上需要一个倒计时计时器?对于这样的东西,可以自然访问插件,但实际上更多

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能