CSS实现弹簧效果的旋转加载动画
先看看效果,像是弹簧在伸缩:
具体代码:
此处用到CSS3的transform属性。
CSS3的变形(transform)属性让元素在一个坐标系统中变形。这个属性包含一系列变形函数,可以移动、旋转和缩放元素。
transform属性可用于内联元素和块元素。其默认值为none,表示不元素不进行变形。transform另一个属性值是一系列的<transform-function>。<transform-function>表示一个或多个变形函数,以空格分开;我们可以同时对一个元素进行变形的多种属性操作,如rotate、scale、translate等。以往我们叠加效果都是用逗号(“,”)隔开,但在transform中使用多个transform-function时却需要有空格隔开。
● 2D transform常用的transform-function的功能:
transform属性3D变形(3D transform)模块的一部分,也就是说所有的2D变形函数也包含于3D变形规范中。如此一来,CSS3变形中的函数根据不同的规范略有不同,下面列出的是变形中的2D和3D常用变形函数的功能,简单说明如下:
translate():用来移动元素,可以根据X轴和Y轴坐标重新定位元素位置。在此基础上有两个扩展函数:translateX()和translateY()。
scale():用来缩小或放大元素,可以使用元素尺寸发生变化。在此基础上有两个扩展函数:scaleX()和scaleY()。 rotate():用来旋转元素。
skew():用来让元素倾斜。在此基础上有两个扩展函数:skewX()和skewY()。
matrix():定义矩阵变形,基于X轴和Y轴坐标重新定位元素位置。
● 3D transform常用的transform-function的功能:
translate3d():移元素元素,用来指定一个3D变形移动位移量。
translate():指定3D位移在Z轴的位移量。
scale3d():用来缩放一个元素。
scaleZ():指定Z轴的缩放向量。
rotate3d():指定元素具有一个三维旋转的角度。
rotateX()、rotateY()和rotateZ():让元素具有一个旋转角度。
perspective():指定一个透视投影矩阵。
matrix3d():定义矩阵变形。
● transform-origin属性用来设置变换的原点。示例中代表旋转中心。
- #loader2,
- #loader2:before,
- #loader2:after {
- border-radius: 50%;
- }
- #loader2:before,
- #loader2:after {
- position: absolute;
- content: '';
- }
- #loader2:before {
- width: 5.2em;
- height: 10.2em;
- background: #ffffff;
- border-radius: 10.2em 0 0 10.2em;
- top: -0.1em;
- left: -0.1em;
- -webkit-transform-origin: 5.2em 5.1em;
- transform-origin: 5.2em 5.1em;
- -webkit-animation: load2 2s infinite ease 1.5s;
- animation: load2 2s infinite ease 1.5s;
- }
- #loader2 {
- font-size: 11px;
- text-indent: -99999em;
- margin: 20px 20px;
- position: relative;
- float: left;
- width: 10em;
- height: 10em;
- box-shadow: inset 0 0 0 1em #ff0f88;
- }
- #loader2:after {
- width: 5.2em;
- height: 10.2em;
- background: #ffffff;
- border-radius: 0 10.2em 10.2em 0;
- top: -0.1em;
- left: 5.1em;
- -webkit-transform-origin: 0px 5.1em;
- transform-origin: 0px 5.1em;
- -webkit-animation: load2 2s infinite ease;
- animation: load2 2s infinite ease;
- }
- @-webkit-keyframes load2 {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg);
- }
- 100% {
- -webkit-transform: rotate(360deg);
- transform: rotate(360deg);
- }
- }
- @keyframes load2 {
- 0% {
- -webkit-transform: rotate(0deg);
- transform: rotate(0deg);
- }
- 100% {
- -webkit-transform: rotate(360deg);
- transform: rotate(360deg);
- }
- }
以上就是本文的全部内容,希望对大家学习CSS加载动画教程有所帮助。
相关文章
- Web前端图片加载的方式多种多样,其所产生的HTTP请求也各异,这里我们就来列举CSS控制前端图片HTTP请求的各种情况示例,需要的朋友可以参考下2016-06-16
- 下面小编就为大家带来一篇css全屏背景图片设置,django加载图片路径详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-06-01
- 这是一款由纯CSS3实现的绿色Loading加载动画特效源码,有多种loading样式供用户选择,采用纯css3实现,没有引入任何外部图形元素2016-05-27
jQuery+css3实现的点击下载按钮3D加载downlading进度特效源码
是一段点击下载按钮后,当前下载图标将进行3D翻转,随后在翻转后的图标中进行downlading进度加载动画效果代码,本段代码适应于所有网页使用,有需要的朋友们可以前来下载使2016-05-09- 这篇文章主要介绍了CSS实现大小相同、颜色深浅不一的粒子旋转加载动画的相关代码,运用CSS3的border-radius圆角属性、box-shadow阴影属性等属性制作出来的,感兴趣的小伙伴2016-04-25
- 这篇文章主要介绍了CSS实现圆环旋转加载动画,一个圆环表示加载进度,像一个时钟顺时针旋转一圈,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-04-25
- 这篇文章主要介绍了CSS实现横向粒子变动加载动画的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-04-25
- 这篇文章主要为大家详细介绍了CSS3实现粒子旋转伸缩加载动画的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-04-22
- 因为公司项目需要用到懒加载来提高网站加载速度,所以将非首屏渲染必需的css文件进行动态加载操作。接下来通过本文给大家分享实现代码,需要的朋友参考下2017-01-18
最新评论