• 技术文章 >web前端 >css教程

    css3动画属性之Transitions属性与Animations属性的功能实现

    不言不言2018-08-24 10:59:43原创1220
    本篇文章给大家带来的内容是关于css3动画属性之Transitions属性与Animations属性的功能实现 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    1 Transitions功能

    (1)浏览器支持:

    到目前为止:Safari3.1以上、Chrome8以上、Firefox4以上、Opera10以上、IE11以上浏览器支持该功能。

    (2)功能

    在CSS3中,Transitions功能通过将元素的某个属性从一个属性值在指定的时间内平滑过渡到另一个属性值来实现动画功能。

    (3)使用方法

    transition:property duration timing-function

    property:表示对哪个属性进行平滑过渡。

    duration:表示在多久时间内完成属性值得平滑过渡。

    timing-function:表示通过什么方法进行平滑过渡。

    div{
    background-color:#ffff00;
    transition:background-color 1s linear;//在1秒内让div元素的背景色从黄色平滑过渡到浅蓝色。
    }
    div{
    background-color:#00ffff;
    }

    (4)另一种使用方法

    transition-property:background-color;
    transition-duration:1;
    transition-timing-function:linear;

    (5)transition-delay属性

    指定变换动画特效延迟多久后开始执行。可以用秒单位或毫秒单位指定属性值。

    transition-delay:1s;
    //或 transition:background-color 1s linear 2s;(在第四个参数中书写延迟时间)

    (6)使用Transitions功能同时平滑过渡多个属性值

    transition:background-color 1s linear,color 1s linear,width 1s linear;

    (7)移动、旋转等动画效果

    img{
    position:absolute;top:70px;left:0;
    transform:rotate(0deg);
    transition:left 1s linear,transform 1s linear;
    }
     img:hover{
    left:30px;
    transform:rotate(720deg);
    }

    (8)缺点

    只能指定属性的开始值与终点值,然后再这两个属性值之间实现平滑过渡,不能实现更为复杂的动画效果。

    2 Animations功能

    (1)浏览器支持:

    到目前为止:Safari4以上、Chrome2以上、Firefox20以上、Opera18以上、IE11以上浏览器支持该功能。

    (2)功能

    与Transitions功能相同,都是通过改变元素的属性值来实现动画效果。

    区别:Animations功能通过定义多个关键帧以及定义每个关键帧中元素的属性值来实现更为复杂的动画效果。

    (3)创建关键帧的集合

    @keyframes 关键帧集合名{ 创建关键帧的代码 }

    (4)创建关键帧的代码(类似如下)

    40%{ 本关键帧中的样式代码 }

    (40%表示改帧位于整个动画过程中的40%处,开始帧为0%,结束帧为100%)

    @keyframes mycolor{
    0%{
    background-color:red;
    }
    40%{
    background-color:darkblue;
    }
    70%{
    background-color:yellow;
    }
    100%{
    background-color:red;
    }
    }

    (5)在元素的样式中使用该关键帧的集合

    div{
    animation-name:my-color; //指定关键帧集合的名称
    animation-duration:5s; //指定完成整个动画所花费的时间
    animation-timing-function:linear; //指定实现动画的方法
    }

    (6)其他属性

    animation-delay:用于指定延迟多少秒或毫秒后开始执行动画。

    animation-iteration-count:用于指定动画的执行次数,可指定为infinite(无限次)。

    animation-direction:用于指定动画的执行方向。可指定属性值包括:

    (7)在一行样式代码中定义animation动画时采用如下所示的书写方式

    animation:keyframe的名称 动画的执行时长 动画的实现方法 延迟多少秒后开始执行动画 动画的执行次数 动画的执行方向;

    (8)实现多个属性值同时改变的动画

    只需只在各关键帧中同时指定这些属性值就可以了。

    3 实现动画的方法

    方法属性值的变化速度
    linear在动画开始时与结束时以同样速度进行改变
    ease-in动画开始时速度很,然后速度沿曲线值进行加快
    ease-out动画开始时速度很,然后速度沿曲线值进行放慢
    ease动画开始时速度很,然后速度沿曲线值进行加快,然后再沿曲线值进行放慢
    ease-in-out动画开始时速度很,然后速度沿曲线值进行加快,然后再沿曲线值进行放慢

    4 实现网页的淡入效果

    通过在开始帧与结束帧中改变页面的opacity属性的属性值来实现页面的淡入效果。

    @keyframes fadein{
    0%{
    opacity:0;
    background-color:white;
    }
    100%{
    opacity:1;
    background-color:white;
    }
    body{
    animation-name: fadein; 
    animation-duration:5s; 
    animation-timing-function:linear; 
    animation-iteration-count:1;
    }

    相关推荐:

    css3动画属性animation(动画)_html/css_WEB-ITnose

    CSS3展现精彩的动画效果 css3的动画属性_html/css_WEB-ITnose

    以上就是css3动画属性之Transitions属性与Animations属性的功能实现的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:CSS3 web前端
    上一篇:css3中背景属性中与边框相关的属性介绍 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 如何制作css3的3d动画--以骰子旋转为例,详解css3动画属性_html/css_WEB-ITnose• CSS3展现精彩的动画效果 css3的动画属性_html/css_WEB-ITnose• css3动画属性animation(动画)_html/css_WEB-ITnose• 关于CSS中的动画属性性能的图文代码介绍
    1/1

    PHP中文网