使用CSS实现一个flash动画
2016-03-22 13:54
513 查看
如我们要实现的是一个日食现象
日食现象是月亮挡在了地球和太阳之间,也就是月亮遮挡住了太阳。
所以要构造日食,我们需要2个对象:一个代表月亮,一个代表太阳。
[css] view
plain copy
<div class="eclipse sun"></div>
<div class="eclipse moon"></div>
我们把整个日食过程分解为3个阶段:1. 缓慢移入 2. 短暂停留 3. 缓慢移出。
在此期间,会产生3个彼此关联的动画。
首先是月亮的位置移动,我们通过改变月亮的X坐标(left或right属性值)来实现(注意把太阳和月亮均设置成绝对定位)。
其次太阳会逐步呈现出圆晕的光线效果,我们使用框阴影(box-shadow)来实现。
[css] view
plain copy
box-shadow: 0px 0px 10px 5px #FFAD00;
最后与此同步的是,整个页面背景要呈现一个变暗的效果,这个比较简单,改变body的background-color即可。
剩下的事情就是针对以上阶段编写关键帧(keyframes)的CSS规则即可。
日食现象是月亮挡在了地球和太阳之间,也就是月亮遮挡住了太阳。
所以要构造日食,我们需要2个对象:一个代表月亮,一个代表太阳。
[css] view
plain copy
<div class="eclipse sun"></div>
<div class="eclipse moon"></div>
我们把整个日食过程分解为3个阶段:1. 缓慢移入 2. 短暂停留 3. 缓慢移出。
在此期间,会产生3个彼此关联的动画。
首先是月亮的位置移动,我们通过改变月亮的X坐标(left或right属性值)来实现(注意把太阳和月亮均设置成绝对定位)。
其次太阳会逐步呈现出圆晕的光线效果,我们使用框阴影(box-shadow)来实现。
[css] view
plain copy
box-shadow: 0px 0px 10px 5px #FFAD00;
最后与此同步的是,整个页面背景要呈现一个变暗的效果,这个比较简单,改变body的background-color即可。
剩下的事情就是针对以上阶段编写关键帧(keyframes)的CSS规则即可。
相关文章推荐
- 发送邮件网页样式乱了。
- CSS教程:div垂直居中的N种方法[转]
- css sprites 图片位置计算
- 在dialog中引用布局样式文件
- CSS3 transition-property属性
- css中有些属性的前面会加上“*”“_”
- iOS-设置视图圆角样式流畅解决方案
- 脚本化css 脚本化内联样式 脚本化css类
- css绝对定位和相对定位的区别
- CSS hack方式一览
- CSS 浮动的16条规则——如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄
- CSS浏览器兼容问题
- CSS3属性之text-indent文本缩进使用详解
- CSS颜色代码大全
- Css3之基础-4 Css 框模型、内边距与外边距
- 关于css的float
- 文本编辑样式!
- css3毛玻璃模糊效果
- 基本图片与文字布局(浮动,包含块)
- 什么是CSS hack