美文网首页
CSS3过渡和动画

CSS3过渡和动画

作者: pushyzheng | 来源:发表于2017-10-03 19:54 被阅读0次

CSS3过渡和动画

1、CSS3 2D变化:

translate()方法:

根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动

例如:-webkit-transform: translate(50px,100px); ———<chrome>是从左边元素移

50个像素,从顶部移动100个像素

rolate()方法:

在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转

例如:-webkit-transform: rotate(30deg); 是元素顺时针旋转30

scale()方法:

元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数

例如:transform: scale(2,3);表示宽度变大为2倍,高度变大为3倍

skew()方法:

包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜

skewX(<angle>);表示只在X轴(水平方向)倾斜。
skewY(<angle>);表示只在Y轴(垂直方向)倾斜。

例如:-webkit-transform: skew(30deg,20deg)表示元素在X轴和Y轴上倾斜20度和30

2、CSS3 2D变化:

rotateX()和rotateY()方法:

围绕其在一个给定度数X轴和Y轴旋转的元素

例如:-webkit-transform: rotateX(130deg)表示绕着X轴旋转30度

3、CSS3 过渡

指定要添加效果的CSS属性
指定效果的持续时间

添加宽度变化的过渡:
  • 指定添加的CSS属性:当用户鼠标悬停时,改变div属性的宽度:
div:hover
{
    width:300px;
}
  • 指定效果的持续时间(宽度变化):
div
{
    transition: width 2s;
}
添加转换效果的过渡:
  • 指定css属性:改变div的变化效果
transform:rotate(80deg);
  • 指定效果的持续时间(转换效果),设置为2s
transition:transform 2s
过渡属性:

transition: property duration timing-function delay;

四个参数分别为:css属性的name,过渡过程所需时间,过渡时间曲线,过渡开始的
延长时间,且这些属性可单独使用

例如:transition-delay: 2s;设置过渡开始的延长时间为2s,当设置hover属性时,仅当悬停在此2s后才开始过渡

4、CSS3 动画:

@keyframes规则是创建动画。 @keyframes规则内指定一个CSS样式和动画将逐步从目前的样式更改为新的样式

创建@keyframes规则(绑定一个选择器):
  • 规定动画的名称

  • 规定动画的时长

例如:把 "myfirst" 动画捆绑到 div 元素,时长:5

div
{
    animation: myfirst 5s;
    -webkit-animation: myfirst 5s; /* Safari 与 Chrome */
}
定义动画的过程:
  • from{ }to{ }方法:

例如设定背景从红色黄色的动画:

@keyframes myfirst{
    from {background:red;}
    to {background:yellow;}
}
  • 百分比来规定变化发生时间方法:

例如设定当动画为25%50%改变背景色,然后当动画100%完成时再次改变

@keyframes myfirst
{
    0%   {background: red;}
    25%  {background: yellow;}
    50%  {background: blue;}
    100% {background: green;}
}

或者同时改变改变背景色位置

@keyframes myfirst
{
    0%   {background: red; left:0px; top:0px;}
    50%  {background: blue; left:200px; top:200px;}
    100% {background: red; left:0px; top:0px;}
}
CSS3的动画属性:

animation: name duration timing-function delay iteration-count direction fill-mode play-state;

参数分别为:绑定的选择器名称、动画持续的秒数、动画的时间曲线、动画的启动前的延长时长、动画的播放次数、指定是否轮流反向播放动画、规定当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时)要应用到元素的样式、指定动画是否正在运行已暂停

每个属性都可单独使用

例如设定一个但鼠标悬停在div上时暂停动画

div:hover{
    animation-play-state:paused
}

相关文章

网友评论

      本文标题:CSS3过渡和动画

      本文链接:https://www.haomeiwen.com/subject/movfyxtx.html