通过使用css3实现让元素椭圆运动。而不是圆形运动。

效果1:http://sandbox.runjs.cn/show/ignefell

效果2:http://runjs.cn/code/w2wxjyeo

代码如下:

<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content="initial-scale=1.0,maximum-scale=1.0,user-scalable=no"><link rel="stylesheet" href="css/base.css"></head><body><style>html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
ul,li,div,p,body{margin:0;padding:0;text-align:left;}
body, html {background:#001424;text-align: left;height: 100%;width: 100%;font-family: "Microsoft YaHei","Helvetica Neue",Arial, HelveticaNeue, "Helvetica-Neue", Helvetica, "BBAlpha Sans", sans-serif;font-size:62.5%;font-weight: normal;}
@-webkit-keyframes star_ani_00{
0%{
opacity: 0;
}
100%{
opacity: 1;
}
}
@keyframes star_ani_00{
0%{
opacity: 0;
}
100%{
opacity: 1;
}
}
@-webkit-keyframes star_ani_01{
0%,100%{
-webkit-transform: translateY(0rem);
}
50%{
-webkit-transform: translateY(-35rem);
}
}
@keyframes star_ani_01{
0%,100%{
transform: translateY(0rem);
}
50%{
transform: translateY(-35rem);
}
}
@-webkit-keyframes star_ani_02{
0%,100%{
-webkit-transform: translateX(0rem) scale(0.8);
}
50%{
-webkit-transform: translateX(10rem) scale(1);
}
}
@keyframes star_ani_02{
0%,100%{
transform: translateX(0rem) scale(0.8);
}
50%{
transform: translateX(10rem) scale(1);
}
}
@-webkit-keyframes star_ani_03{
0%,100%{
-webkit-transform: translateX(0rem);
}
50%{
-webkit-transform: translateX(-36rem);
}
}
@keyframes star_ani_03{
0%,100%{
transform: translateX(0rem);
}
50%{
transform: translateX(-36rem);
}
} @-webkit-keyframes star_ani_04{
0%,100%{
-webkit-transform: translateY(0rem) scale(0.8);
}
50%{
-webkit-transform: translateY(10.5rem) scale(1);
}
}
@keyframes star_ani_04{
0%,100%{
transform: translateY(0rem) scale(0.8);
}
50%{
transform: translateY(10.5rem) scale(1);
}
} @-webkit-keyframes star_ani_05{
0%,100%{
-webkit-transform: translateX(0rem);
}
50%{
-webkit-transform: translateX(-26.5rem);
}
}
@keyframes star_ani_05{
0%,100%{
transform: translateX(0rem);
}
50%{
transform: translateX(-26.5rem);
}
} @-webkit-keyframes star_ani_06{
0%,100%{
-webkit-transform: translateY(0rem) scale(0.8);
}
50%{
-webkit-transform: translateY(8rem) scale(1);
}
}
@keyframes star_ani_06{
0%,100%{
transform: translateY(0rem) scale(0.8);
}
50%{
transform: translateY(8rem) scale(1);
}
}
.main{
position: relative;
height:100%;
}
.wrap-icon{
position:absolute;
background-size: 100%;
background-repeat: no-repeat;
left:50%;
top: 12%;
z-index: 2;
opacity: 0;
} .wrap-icon1{
width: 2.7rem;
height: 2.7rem;
margin-left:-5.5rem;
margin-top: 28rem;
-webkit-animation:star_ani_00 0.5s 4s linear forwards;
animation:star_ani_00 0.5s 4s linear forwards;
}
.wrap-icon1 span{
width:2.7rem;
height:2.7rem;
display: block;
-webkit-animation:star_ani_02 16s 4s ease-in-out infinite;
animation:star_ani_02 16s 4s ease-in-out infinite;
}
.wrap-icon1 i{
width:1.5rem;
height:1.5rem;
border-radius:1.5rem;
display: block;
background:#f60;
background-size: 100% 100%;
-webkit-animation:star_ani_01 16s 0s ease-in-out infinite;
animation:star_ani_01 16s 0s ease-in-out infinite;
} .wrap-icon2{
width: 2.7rem;
height: 2.7rem;
margin-left: 17.8rem;
margin-top: 8rem;
-webkit-animation:star_ani_00 0.5s 5s linear forwards;
animation:star_ani_00 0.5s 5s linear forwards;
}
.wrap-icon2 span{
width:2.7rem;
height:2.7rem;
display: block;
-webkit-animation:star_ani_03 20s 0s ease-in-out infinite;
animation:star_ani_03 20s 0s ease-in-out infinite;
}
.wrap-icon2 i{
width:1.5rem;
height:1.5rem;
border-radius:1.5rem;
display: block;
background:#f60;
background-size: 100% 100%;
-webkit-animation:star_ani_04 20s 5s ease-in-out infinite;
animation:star_ani_04 20s 5s ease-in-out infinite;
} .wrap-icon3{
width: 2.7rem;
height: 2.7rem;
margin-left: 12.4rem;
margin-top: 9rem;
-webkit-animation:star_ani_00 0.5s 2.5s linear forwards;
animation:star_ani_00 0.5s 2.5s linear forwards;
}
.wrap-icon3 span{
width:2.7rem;
height:2.7rem;
display: block;
-webkit-animation:star_ani_05 10s 0s ease-in-out infinite;
animation:star_ani_05 10s 0s ease-in-out infinite;
}
.wrap-icon3 i{
width:2rem;
height:2rem;
border-radius:1rem;
display: block;
background:#f60;
background-size: 100% 100%;
-webkit-animation:star_ani_06 10s 2.5s ease-in-out infinite;
animation:star_ani_06 10s 2.5s ease-in-out infinite;
}
.wrap-bg{
width:28rem;
height:28rem;
position: absolute;
top:12%;
left:50%;
margin-left:-14rem;
border:0.1rem solid #aaa;
border-radius:28rem;
-webkit-transform:scale3d(1,0.3,1);
transform:scale3d(1,0.3,1);
}
.wrap-bg2{
width:36rem;
height:36rem;
position: absolute;
top:12%;
left:50%;
margin-left:-18rem;
margin-top:-4rem;
border:0.1rem solid #aaa;
border-radius:28rem;
-webkit-transform:scale3d(1,0.3,1);
transform:scale3d(1,0.3,1);
}
.wrap-bg3{
width:32rem;
height:32rem;
position: absolute;
top:12%;
left:50%;
margin-left:-16rem;
margin-top:-3rem;
-webkit-transform:rotate(4deg);
transform:rotate(4deg);
}
.wrap-bg3 span{
display: block;
width:100%;
height:100%;
border:0.1rem solid #aaa;
border-radius:28rem;
-webkit-transform:scale3d(0.32,1,1);
transform:scale3d(0.32,1,1);
}
.wrap-sun{
position: absolute;
width:5.3rem;
height:5.3rem;
top:12%;
left:50%;
margin-left:-2.6rem;
margin-top:11rem;
background:url(images/sun.png) no-repeat;
background-size: 100%;
}
</style><div class="box"> <div class="wrap-bg"></div>
<div class="wrap-bg2"></div>
<div class="wrap-bg3"><span></span></div> <div class="wrap-icon wrap-icon1">
<span><i></i></span>
</div> <div class="wrap-icon wrap-icon2">
<span><i></i></span>
</div> <div class="wrap-icon wrap-icon3">
<span><i></i></span>
</div> <div class="wrap-sun"></div> </div>
</body></html>

css3椭圆运动的更多相关文章

  1. 纯CSS3实现的一些酷炫效果

    之前在网上看到一些用纯CSS3实现的酷炫效果,以为实现起来比较困难,于是想看看具体是怎么实现的. 一.笑脸猫动画 实现效果如下: 这个实现起来确实比较麻烦,很多地方需要花时间,有耐心地调整. 1.先看 ...

  2. CSS3 border-radius边框圆角

    在CSS3中提供了对边框进行圆角设定的支持,可对边框1~4个角进行圆角样式设置. 目录 1. 介绍 2. value值的格式和类型 3. border-radius 1~4个参数说明 4. 在线示例 ...

  3. CSS3 3D立方体效果-transform也不过如此

    CSS3系列已经学习了一段时间了,第一篇文章写了一些css3的奇技淫巧,原文戳这里,还获得了较多网友的支持,在此谢过各位,你们的支持是我写文章最大的动力^_^. 那么这一篇文章呢,主要是通过一个3D立 ...

  4. 三分钟学会用 js + css3 打造酷炫3D相册

    之前发过该文,后来不知怎么回事不见了,现在重新发一下. 中秋主题的3D旋转相册 如图,这是通过Javascript和css3来实现的.整个案例只有不到80行代码,我希望通过这个案例,让正处于迷茫期的j ...

  5. 使用CSS3实现一个3D相册

    CSS3系列我已经写过两篇文章,感兴趣的同学可以先看一下CSS3初体验之奇技淫巧,CSS3 3D立方体效果-transform也不过如此 第一篇主要列出了一些常用或经典的CSS3技巧和方法:第二篇是一 ...

  6. Web大前端时代之:HTML5+CSS3入门系列

    准备来一波新技术,待续.... Old: 联系源码:https://github.com/dunitian/LoTHTML5 文档下载:https://github.com/dunitian/LoTD ...

  7. 07. Web大前端时代之:HTML5+CSS3入门系列~H5 地理位置

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 源码:https://github.com/duniti ...

  8. 前端制作动画的几种方式(css3,js)

    制作动态的网页是是前端工程师必备的技能,很好的实现动画能够极大的提高用户体验,增强交互效果,那么动画有多少实现方式,一直对此有选择恐惧症的我就总结一下,以便在开发的时候选择最好的实现方式. 1.css ...

  9. 原生js+css3实现图片自动切换,图片轮播

    运用CSS3transition及opacity属性 制作图片轮播动画 自己这两天根据用js来控制触发CSS3中transition属性,从而写出来的以CSS3动画为基础,js控制过程的图片轮播 运用 ...

随机推荐

  1. HDU3247 Resource Archiver —— AC自动机 + BFS最短路 + 状压DP

    题目链接:https://vjudge.net/problem/HDU-3247 Resource Archiver Time Limit: 20000/10000 MS (Java/Others)  ...

  2. Hadoop- Hadoop环境搭建

    Windows下Hadoop的安装 准备工具:64位的JDK,Hadoop安装包(我使用的是2.6.1) JDK下载地址 官网: http://www.oracle.com/technetwork/j ...

  3. python的tkinter对话框

    import tkinter.messagebox #这个是消息框,对话框的关键 root = tkinter.Tk() root.withdraw() a=tkinter.messagebox.sh ...

  4. python绘制圆和椭圆

    源自:https://blog.csdn.net/petermsh/article/details/78458585 1. 调用包函数绘制圆形Circle和椭圆Ellipse from matplot ...

  5. html5--1.11列表

    html5--1.11列表 学习要点: 无序列表 有序列表 列表的属性 自定义列表 1.无序列表的基本格式 ul(unorder line)标签里面放li标签就好了,每一项就是一个li(LineIte ...

  6. tflearn 在每一个epoch完毕保存模型

    关键代码:tflearn.DNN(net, checkpoint_path='model_resnet_cifar10', max_checkpoints=10, tensorboard_verbos ...

  7. 写个sleep玩玩

    static void sig_when_weakup(int no){ printf("weakup weakup\n"); longjmp(buf, ); } void wea ...

  8. bjwc Day1 暴力大战

    今天终于有题了... 题目是COCI2016/2017 Round #4 T1一看就是NP问题,k<=50,开始想暴力,想了个n^4的,大概能过,就没去管它 T2想得太naive,丢了100分给 ...

  9. poj1011 Sticks[剪枝题]

    https://vjudge.net/problem/POJ-1011 此题很重要.★★★ 很欢(e)乐(xin)的一道搜索剪枝题..poj数据还是太水了,我后来想不出来剪枝方法了,就加了句掐了时间语 ...

  10. 「NOIP2017」「LuoguP3952」 时间复杂度(模拟,栈

    题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序 ...