文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

css动画是如何组成的

2024-04-02 19:55

关注

小编给大家分享一下css动画是如何组成的,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

css动画是由关键帧、动画属性和css属性三部分组成的。关键帧用于定义动画在不同阶段的状态;动画属性用于决定动画的播放时长,播放次数,以及用何种函数式去播放动画等;css属性用于指定css元素在不同关键帧下的状态。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

css动画是由三部分组成,分别为关键帧(keyframes)、动画属性(properties)、css属性。

1、关键帧

使用@keyframes规则指定,可以用来定义CSS动画的一个周期的行为,可以创建简单的动画。

动画与转换类似,因为它们都是随时间改变CSS属性的表示值。主要区别在于,当属性值更改时(例如,当悬停时属性值发生改变时),转换会隐式的触发,但在应用动画属性时会显式执行动画。因此,动画需要显示动画属性的显式值。这些值是在@keyframes规则中指定的动画关键帧定义的。因此,@keyframes规则里是由一组封装的CSS样式规则组成的,这些规则描述了属性值如何随时间变化。

2、动画属性

通过@keyframes创建了动画,就需要animation(动画)属性将动画应用于元素,并设置动画迭代的次数,是否在开始和结束值之间交替,以及动画是否应该运行或暂停。

动画属性可以理解为播放器的相关功能,一个最基本的播放器应该具有:播放/暂停、播放时长、播放顺序(逆序/正序/交替播放)、循环次数等。

animation:
[animation-name] [animation-duration] // 动画的名称、持续时间
[animation-timing-function][animation-delay] // 关于时间的函数(properties/t)、延迟时间
[animation-iteration-count] [animation-direction] // 播放次数、播放顺序
[animation-fill-mode] [animation-play-state]; // 播放前或停止后设置相应样式、控制动画运行或暂停

关键帧+动画属性的语法:


@keyframes 动画名称{
    
}


.element {
    animation-name: 动画名称(在@keyframes中已经声明好的);

    
    animation: 动画名称 1s ...
}

在@keyframes规则的大括号里有什么?

在大括号中,我们需要定义关键帧或航点,这些关键帧或航点指定在动画期间的特定点处正在动画化的属性的值。这允许我们控制动画序列中的中间步骤。例如,一个简单动画的@keyframe可以是这样:

@keyframes change-bg-color {
    0% {
        background-color: red;
    }
    50% {
        background-color: blue;
    }
    100%{
    background-color: red;
    }
}
.demo{
 -webkit-animation:change-bg-color 5s infinite;
         animation: change-bg-color 5s infinite;
}

运行效果:

css动画是如何组成的

'0%'、‘50%’、'100%'都是关键帧选择器,每个选择器定义一个关键帧规则。关键帧规则的关键帧声明块由属性和值组成。

上述动画类似于简单的过渡效果:背景颜色从动画开头的一个值(0%)开始变化,在中间达到一个值(50%),在动画结束时达到另一个值(100%)。“0%”、”50%”和“100%”关键帧选择器定义了希望动画属性更改值的航点或百分点。我们也可以使用选择器关键字 from,to而不是分别使用0%和100%,它们是等效的。

@keyframes change-bg-color {
   from{
        background-color: red;
    }
    50% {
        background-color: blue;
    }
    to{
    background-color: red;
    }
}

关键帧选择器由一个或多个以逗号分隔的百分比值或from和to关键字组成。请注意,百分比单位说明符必须用于百分比值。因此,'0'是无效的关键帧选择器。

以下是具有关键帧选择器的动画示例,其中包括多个以逗号分隔的百分比值和/或关键字关键帧选择器from和to。

@keyframes bouncing {
    0%, 50%, 100% { 
        top: 0;
    }
    25%, 75% {
        top: 100px;
    }
}

上面的@keyframes规则定义:元素的顶部偏移量在开始时,中途和动画结束时将等于零,并且它将四分之一和四分之三路径时等于100px; 这意味着元素在动画循环中上下移动了好几次。

以上是“css动画是如何组成的”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯