CSS3 制作绽放的莲花采用效果叠加实现


Posted in HTML / CSS onJanuary 31, 2013

这效果看起来挺炫,但原理并不复杂,能实现一片花瓣动起来,就能实现9片花瓣。效果的叠加而已。
HTML:

复制代码
代码如下:

<section class="demo">
<div class="box">
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
</div>
</section>

CSS:
复制代码
代码如下:

View Code
body {
background-color: #000;
}
.demo {
margin:0px auto;
width: 500px;
}
/*莲花花瓣的容器*/
.box {
position: relative;/*设置相对定位,因为花瓣都要进行绝对定位*/
height: 400px;
margin-top:400px
}
/*花瓣进行绝对定位*/
.box .leaf {
position: absolute;
}
/*绘制莲花花瓣*/
.leaf {
margin-top:0px;
width: 200px;
height: 200px;
border-radius: 200px 0px;/*制作花瓣角*/
background: -moz-linear-gradient(45deg,rgba(188,190,192,1) 8%,rgba(158,31,99,1) 30%,rgba(158,31,99,1) 100%);/*制作花瓣颜色*/
background: -webkit-linear-gradient(45deg,rgba(188,190,192,1) 8%,rgba(158,31,99,1) 30%,rgba(158,31,99,1) 100%);/*制作花瓣颜色*/
opacity: .6;
filter:alpha(opacity=50);
transform: rotate(135deg);/*花瓣旋转135deg*/
transform-origin: top right;/*重置花瓣旋转原点,这个很重要*/
}
@keyframes show-2 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(45deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-3 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(65deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-4 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(85deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-5 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(105deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-6 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(165deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-7 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(185deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-8 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(205deg);
}
%{
transform: rotate(135deg);
}
}
@keyframes show-9 {
% {
transform: rotate(135deg);
}
% {
transform: rotate(225deg);
}
%{
transform: rotate(135deg);
}
}
.leaf:nth-child(1) {
background: -moz-linear-gradient(45deg,rgba(250,250,250,1) 8%,rgba(158,31,99,1) 30%,rgba(158,31,99,1) 100%);/*制作花瓣颜色*/
}
.leaf:nth-child(2) {
animation: show-2 6s ease-in-out infinite;
}
.leaf:nth-child(3) {
animation: show-3 6s ease-in-out infinite;
}
.leaf:nth-child(4) {
animation: show-4 6s ease-in-out infinite;
}
.leaf:nth-child(5) {
animation: show-5 6s ease-in-out infinite;
}
.leaf:nth-child(6) {
animation: show-6 6s ease-in-out infinite;
}
.leaf:nth-child(7) {
animation: show-7 6s ease-in-out infinite;
}
.leaf:nth-child(8) {
animation: show-8 6s ease-in-out infinite;
}
.leaf:nth-child(9) {
animation: show-9 6s ease-in-out infinite;
}

演示:

提示:您可以先修改部分代码再运行
HTML / CSS 相关文章推荐
使用before和:after伪类制作css3圆形按钮
Apr 08 HTML / CSS
纯HTML5+CSS3制作图片旋转
Jan 12 HTML / CSS
CSS3绘制超炫的上下起伏波动进度加载动画
Apr 21 HTML / CSS
css3的focus-within选择器的使用
May 11 HTML / CSS
HTML5 Canvas标签使用收录
Jul 07 HTML / CSS
Bootstrap 学习分享
Nov 12 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
HTML5地理定位_动力节点Java学院整理
Jul 12 HTML / CSS
微信小程序“圣诞帽”的实现思路详解
Dec 28 HTML / CSS
遮罩层 + Iframe实现界面自动显示的示例代码
Apr 26 HTML / CSS
HTML5来实现本地文件读取和写入的实现方法
May 25 HTML / CSS
Html5同时支持多端sdk的小技巧
Nov 17 HTML / CSS
CSS3 制作旋转的大风车(充满童年回忆)
Jan 30 #HTML / CSS
css3简单练习实现遨游浏览器logo的绘制
Jan 30 #HTML / CSS
IE滤镜与CSS3效果(详细整理分享)
Jan 25 #HTML / CSS
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
Jan 23 #HTML / CSS
纯css3无js实现的Android Logo(有简单动画)
Jan 21 #HTML / CSS
定义css设备类型-Media Queries图表简介及使用方法
Jan 21 #HTML / CSS
css3强大的动画效果animate使用说明及浏览器兼容介绍
Jan 09 #HTML / CSS
You might like
php中字符查找函数strpos、strrchr与strpbrk用法
2014/11/18 PHP
php转换颜色为其反色的方法
2015/04/27 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
jquery随意添加移除html的实现代码
2011/06/21 Javascript
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
2013/12/02 Javascript
jquery导航制件jquery鼠标经过变色效果示例
2013/12/05 Javascript
利用Jquery实现可多选的下拉框
2014/02/21 Javascript
javascript中Date对象的getDay方法使用指南
2014/12/22 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
初探nodeJS
2017/01/24 NodeJs
JavaScript数组迭代方法
2017/03/03 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
vue中子组件调用兄弟组件方法
2018/07/06 Javascript
微信小程序之 catalog 切换实现解析
2019/09/12 Javascript
nodejs如何在package.json中设置多条启动命令
2020/03/16 NodeJs
JavaScript中继承原理与用法实例入门
2020/05/09 Javascript
用Python实现协同过滤的教程
2015/04/08 Python
python实现二分查找算法
2017/09/21 Python
python简易远程控制单线程版
2018/06/20 Python
浅谈关于Python3中venv虚拟环境
2018/08/01 Python
Python绘制并保存指定大小图像的方法
2019/01/10 Python
使用Python做定时任务及时了解互联网动态
2019/05/15 Python
python3.7环境下安装Anaconda的教程图解
2019/09/10 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
python实现excel公式格式化的示例代码
2020/12/23 Python
分享全球十款超强HTML5开发工具
2014/05/14 HTML / CSS
全球烹饪课程的领先预订平台:Cookly
2020/01/28 全球购物
北京SQL新华信咨询
2016/09/30 面试题
Java软件工程师综合面试题笔试题
2013/09/08 面试题
兼职学生的自我评价
2013/11/24 职场文书
学校安全检查制度
2014/01/27 职场文书
电子商务专业学生职业生涯规划
2014/03/07 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
Hive HQL支持2种查询语句风格
2022/06/25 数据库