css属性之animation与@keyframes制作天空动态云彩

构造地貌研究入门:手把手教你用ArcGIS插件CalHypso分析流域地貌形态 本文详细介绍了如何使用ArcGIS插件CalHypso进行流域地貌形态分析,包括工具安装、数据预处理、HI曲线生成及结果解读等关键步骤。通过实战操作,帮助读者掌握面积高程积分(HI)曲线的应用技巧,为构造地貌研究提供量化工具。 阅读详情

(一)先来说说keyframes

keyframes就是关键帧的意思,动画不就是一帧一帧的吗

keyframes具有其自己的语法规则,他的命名是由"@keyframes"开头,后面紧接着是这个“动画的名称”加上一对花括号“{}”,括号中就是一些不同时间段样式规则,有点像我们css的样式写法一样。对于一个"@keyframes"中的样式规则是由多个百分比构成的,如“0%”到"100%"之间,我们可以在这个规则中创建多个百分比,我们分别给每一个百分比中给需要有动画效果的元素加上不同的属性,从而让元素达到一种在不断变化的效果

@keyframes sky_background{
0%{
background:#FF0000;
color:#FF0000
}
50%{
background:#00FFFF;
color:#FF00FF
}
100%{
background:#FF0000;
color:#FF0000
}
}

像这样就ok

(二)接下来说说animation根据w3c提供有下面参数

1.animation-name:是用来定义一个动画的名称,其主要有两个值:IDENT是由Keyframes创建的动画名,换句话说此处的IDENT要和Keyframes中的IDENT一致,如果不一致,将不能实现任何动画效果;none为默认值,当值为none时,将没有任何动画效果。另外我们这个属性跟前面所讲的transition一样,我们可以同时附几个animation给一个元素,我们只需要用逗号“,”隔开。

2.animation-duration是用来指定元素播放动画所持续的时间长,取值:<time>为数值,单位为s (秒.)其默认值为“0”。

3.animation-timing-function:是指元素根据时间的推进来改变属性值的变换速率,说得简单点就是动画的播放方式。具有以下六种变换方式:ease;ease-in;ease-in-out;linear;cubic-bezier

4.animation-delay:是用来指定元素动画开始时间。取值为<time>为数值,单位为s(秒),其默认值也是0

5.animation-iteration-count是用来指定元素播放动画的循环次数,其可以取值<number>为数字,其默认值为“1”;infinite为无限次数循环。

6.animation-direction是用来指定元素动画播放的方向,其只有两个值,默认值为normal,如果设置为normal时,动画的每次循环都是向前播放;另一个值是alternate,他的作用是,动画播放在第偶数次向前播放,第奇数次向反方向播放

7.animation-play-state主要是用来控制元素动画的播放状态。其主要有两个值,running和paused其中running为默认值


.sky {
  height: 480px;
  background: #007fd5;
  position: relative;
  overflow: hidden;
  -webkit-animation: sky_background 50s ease-out infinite;
  -moz-animation: sky_background 50s ease-out infinite;
  -o-animation: sky_background 50s ease-out infinite;
  animation: sky_background 50s ease-out infinite;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

这是一个实例这样就ok只用了部分值

下面用一个小例子来结束本文 素材来源于17素材网

<span style="font-size:10px;"><!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>纯CSS3多层云彩变换动画特效</title>
<style>
  html, body {
  margin: 0;
  height: 100%
}

.sky {
  height: 480px;
  background: #007fd5;
  position: relative;
  overflow: hidden;
  -webkit-animation: sky_background 50s ease-out infinite;
  -moz-animation: sky_background 50s ease-out infinite;
  -o-animation: sky_background 50s ease-out infinite;
  animation: sky_background 50s ease-out infinite;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.clouds_one {
  background: url("img/cloud_one.png");
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 300%;
  -webkit-animation: cloud_one 50s linear infinite;
  -moz-animation: cloud_one 50s linear infinite;
  -o-animation: cloud_one 50s linear infinite;
  animation: cloud_one 50s linear infinite;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.clouds_two {
  background: url("img/cloud_two.png");
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 300%;
  -webkit-animation: cloud_two 75s linear infinite;
  -moz-animation: cloud_two 75s linear infinite;
  -o-animation: cloud_two 75s linear infinite;
  animation: cloud_two 75s linear infinite;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.clouds_three {
  background: url("img/cloud_three.png");
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 300%;
  -webkit-animation: cloud_three 100s linear infinite;
  -moz-animation: cloud_three 100s linear infinite;
  -o-animation: cloud_three 100s linear infinite;
  animation: cloud_three 100s linear infinite;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

@-webkit-keyframes sky_background {
  0% {
	background: #007fd5;
	color: #007fd5
  }
  50% {
	background: #000;
	color: #a3d9ff
  }
  100% {
	background: #007fd5;
	color: #007fd5
  }
}
@-moz-keyframes sky_background {
  0% {
	background: #007fd5;
	color: #007fd5
  }
  50% {
	background: #000;
	color: #a3d9ff
  }
  100% {
	background: #007fd5;
	color: #007fd5
  }
}
@keyframes sky_background {
  0% {
	background: #007fd5;
	color: #007fd5
  }
  50% {
	background: #000;
	color: #a3d9ff
  }
  100% {
	background: #007fd5;
	color: #007fd5
  }
}

@-webkit-keyframes cloud_one {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@-moz-keyframes cloud_one {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@keyframes cloud_one {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}

@-webkit-keyframes cloud_two {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@-moz-keyframes cloud_two {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@keyframes cloud_two {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}

@-webkit-keyframes cloud_three {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@-moz-keyframes cloud_three {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
@keyframes cloud_three {
  0% {
	left: 0
  }
  100% {
	left: -200%
  }
}
</style>
</head>
<body>

<div class="sky">
	<div class="clouds_one"></div>
	<div class="clouds_two"></div>
	<div class="clouds_three"></div>
</div>

</body>
</html></span>



从数据集到产品:聊聊Room-to-Room (R2R) 如何影响扫地机器人、AR导航的未来 本文探讨了Room-to-Room (R2R) 数据集如何推动视觉与语言导航(VLN)技术的发展,并重塑扫地机器人和AR导航的未来。通过分析R2R基于Matterport3D的设计及其在真实场景中的应用,揭示了其在提升智能导航精度和自然语言交互能力方面的潜力。文章还讨论了从实验室到产品化的关键技术挑战与解决方案。 阅读详情

相关推荐

Globus数据下载全攻略:从零配置到批量下载大文件(附常见问题解决)

本文详细介绍了Globus数据下载的全流程,从零配置到批量下载大文件的实用技巧,包括环境准备、高级传输策略、性能优化及常见问题解决方案。Globus作为科研数据的高效传输工具,通过并行流传输和自动校验技术,显著提升大规模数据传输的效率和可靠性。

u9v0w的博客 662

CSS3关键帧动画(animation keyframes)

关键帧动画animation 通过定义一段动画中的关键点、关键状态来创建动画。Keyframes相比transition对动画过程和细节有更强的控制 分为两步: 一、定义关键帧动画 @keyframes 动画名称{ 时间点 {元素状态} } 时间点可以用from (表示起始点) 和 to(表示终点)表示 也可以用百分比表示 0%~100%。 二、绑定关键帧动画 在需要添加动画的元素的css中添...

ANGWH的博客 4050

keyframes & animation

1、keyframes(关键帧) (1)计算机动画术语, 帧--就是动画中最小单位的单幅影像画面,相当于电影 胶片 上的每一格镜头。在动画软件的时间轴上帧表现为一格或一个标记。 (2)关键帧——相当于二维动画中的原画。指角色或者物体运动或变化中的关键动作 所处的那一帧。关键帧与关键帧之间的动画可以由软件来创建,叫做过渡帧或者 中间帧。其类似于 Flash 中的关键帧。在 CSS3 中其主要以 “@keyframes” 开 头,后面紧跟着是动画名称加上一对花括号“{…}..

weixin_57784518的博客 594

基于stm32的数控恒压恒流电源设计方案

基于stm32的数控恒压恒流电源设计方案 基于stm32的数控恒压恒流电源设计方案 不包实物,可自己动手制作,可代做 本设计采用220V市电输入工频变压器,将220V交流电压降为24V交流电压,经过全桥整流加电容滤波,输出约32V直流电压.可调输出电压方案采用线性稳压调整器方案,即运放处于比较调整状态,运放输出驱动P型MOS管,电压输出端由电阻分压反馈至运放同相输入端,运放反相输入端由STM32单片机控制TLC5615数模转换器输入模拟电压,根据运放构成比较器原理,运放的同相端和反相端始终趋向于电压相等的特

m0_72265581的博客 7221

从零到一:3D-ResNet50在医学影像中的实战陷阱与避坑指南

本文深入探讨了3D-ResNet50在医学影像分类中的实战应用,重点解析了NIFTI数据预处理、小样本迁移学习陷阱及GPU显存优化等关键问题。通过分块加载、混合精度训练等技巧,有效解决了医学影像处理中的内存管理和性能挑战,为开发者提供了实用的避坑指南和优化策略。

weixin_29038345的博客 390

css动画里面transition和transform以及animation和和keyframes几个属性的区别,以及语法格式

TRANSTION

Jason_from_China的博客 2897

芯片低功耗设计实战:CPF与UPF流程选择指南(附工具对比)

本文深入探讨了芯片低功耗设计实战中CPF与UPF流程的选择策略。文章从两者本质差异与演进脉络出发,结合Cadence与Synopsys工具链的深度支持实况,为工程师提供了基于项目场景的决策框架。重点分析了在混合工具链环境下如何实施流程与验证,并强调了利用Spyglass等工具确保功耗意图无损传递的关键技巧,旨在帮助团队做出明智的流程抉择,提升设计效率与可靠性。

weixin_29197051的博客 405

动画-Animation/@keyframes

动画的使用流程有两步,分为定义动画和使用动画,定义动画相当于制作动画,有两种制作方法,一个是 from{}···to{};另一个是百分比。制作完动画之后,再在需要的地方通过 animation 来使用制作好的动画效果。

NewHouser的博客 906

在Docker中集成GPU监控体系

先上效果图 等文档整理出来再更

tamako0v0的博客 2470

深度学习之目标检测--Pytorch实战

只需要能看懂python代码,就能最快入门深度学习---目标检测。目标检测简单的玩玩儿还行,模型调优,调参,还需要一定的数学功底。通过代码来实现卷积,池化,非线性激活,正则化,归一化,能让人减少对大量数学公式的敬畏,手写神经网络也是考研复试中上机考试的压轴题,掌握搭建神经网络和如何训练模型是需要掌握的基础的

需要远程指导仿真实验、代码有问题的,请后台私信或者关注公众号 1万+

css3动画基础详解(@keyframes和animation)

动画是使元素从一种样式逐渐变化为另外一种效果,CSS3动画的生成,主要依赖@keyframes定义动画,animation执行动画。

漫天随飞雪的博客 1747

[QMT量化交易小白入门]-七十九、增加标的后,五年回测收益率达到了2493%

本专栏主要是介绍QMT的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写100篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步。

木头大左的博客 1574

纯css3云彩动画效果

效果演示 黑天到白天的渐变过渡 HTML &lt;!doctype html&gt; &lt;html lang="zh"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"

Caroline_LuoLuo的博客 1192

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

纯CSS动画图

  实现过程: 纯CSS animation动画属性和@KeyFrames方法 素材:                         实现源代码 HTML部分:   &lt;!doctype html&gt; &lt;html lang="zh"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt;...

剑云的博客 410

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

CSS3的关键帧动画(KeyframeAnimations)简介

你现在可能已经听说过基于关键帧语法的CSS3动画了。CSS3规范中的动画模块已经发布了几年了,而它也越来越显示出在WEB设计中扮演重要角色的巨大潜力。 开发者可以使用CSS3关键帧动画创建平滑,性能优异且易于维护的动画,而并不需要大量的脚本代码。这无疑是使用CSS3解决现实问题的又一种优雅的方案。如果你还没有开始学习CSS3动画的语法,那么就在CSS3规范正式完成之前开始充电吧。 本文中,我们

辰君熙 4572

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

记录前端历程:CSS关键帧与动画animation+@keyframes

来给CSS加个动画吧 如果要给元素添加动画,我们需要使用animation属性+@keyframes。 animation属性控制动画的外观,@keyframes规则控制动画中各阶段的变化。 animation-name设置动画的名称, 也就是要绑定的选择器的@keyframes的名称。 animation-duration设置动画所花费的时间。 @keyframes能够创建动画。 创建动画的原...

Mohe01的博客 540

keyframes&animation

keyframes(关键帧) 关键帧——相当于二维动画中的原画。指角色或者物体运动或变化中的关键动作 所处的那一帧。关键帧与关键帧之间的动画可以由软件来创建,叫做过渡帧或者 中间帧。其类似于 Flash 中的关键帧。在 CSS3 中其主要以“@keyframes” 开头,后面紧跟着是动画名称加上一对花括号“{…}”,括号中就是一些不同时 间段样式规则。通常以百分比来规定改变发生的时间,或者通过关键词”from”和”to”,等价于0%和100%。0%是动画的开始时间,100%动画的结束时间。 关键帧的创建:

weixin_57727976的博客 356

CSS3 animation 关键帧动画 keyframes

CSS3 animation 关键帧动画 keyframes

且听风吟的博客 955

css3动画animation 和keyframes关键帧属性及简介

在 CSS3 出现之前,动画都是通过 JavaScript 动态的改变元素的样式属性来完成了,这种方式虽然能够实现动画,但是在性能上存在一些问题。CSS3 的出现,让动画变得更加容易,性能也更加好。 CSS3 中有三个关于动画的样式属性transform、transition和animation; transform transform可以用来设置元素的形状改变,主要有以下几种变形:rotate(...

weixin_45846303的博客 1570

CSS 动画(@keyframes 和 animation 属性)初识

keyframes定义了动画的各个关键帧,控制元素的从一个状态到另一个状态的转换过程。@keyframes定义了动画的关键帧,通过控制元素的状态变换。animation用于应用动画并控制其属性,如持续时间、速度曲线、循环次数等。使用场景:常见场景包括加载动画、按钮交互、页面转场等。性能优化:使用transform和opacity属性进行动画,避免过多动画并使用提高性能。通过合理地使用 CSS 动画,能够为网页增加动感和互动性,提升用户体验。

cuijiying的博客 2493

css3背景图片无间断滚动

类名{ background: url(../images/bg.png) 0 bottom repeat-x;     -webkit-animation: animate-cloud 20s linearinfinite;     -moz-animation: animate-cloud 20s linear infinite;     -ms-animation: animate-

记录踩过的坑只为了更好地填坑 3924

CSS动画案例--天空中云朵变化效果

用一个大的div标签包裹三个子div,外面的div是天空背景,三个子div分别用来存放三朵云。需要用到的云朵素材为三张图片(白色云朵透明背景)此时我们可以得到一个颜色随时间渐变的天空背景效果。...

qq_48802092的博客 1451

CSS 使用@keyframes与animation实现简单的动画效果

CSS 使用@keyframes与animation实现简单的动画效果

zzylj的博客 1109

CSS3 -- @keyframes动画

一篇文章教会你css3中的动画

qq_51248309的博客 7269

CSS Animation 详解

CSS Animation 允许元素平滑地从一个样式状态过渡到另一个样式状态。通过设置关键帧(keyframes),可以控制动画序列中的中间步骤。

0.0的博客 3874
上一篇: 函数指针
下一篇: java----------android环境配置
反斜杠青年
博客等级 码龄11年 29粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值