CSS3 制作绽放的莲花
2013-01-29 11:52
211 查看
这效果看起来挺炫,但原理并不复杂,能实现一片花瓣动起来,就能实现9片花瓣。效果的叠加而已。
HTML:
CSS:
View Code
演示:
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 { 0% { transform: rotate(135deg); } 50% { transform: rotate(45deg); } 100%{ transform: rotate(135deg); } } @keyframes show-3 { 0% { transform: rotate(135deg); } 50% { transform: rotate(65deg); } 100%{ transform: rotate(135deg); } } @keyframes show-4 { 0% { transform: rotate(135deg); } 50% { transform: rotate(85deg); } 100%{ transform: rotate(135deg); } } @keyframes show-5 { 0% { transform: rotate(135deg); } 50% { transform: rotate(105deg); } 100%{ transform: rotate(135deg); } } @keyframes show-6 { 0% { transform: rotate(135deg); } 50% { transform: rotate(165deg); } 100%{ transform: rotate(135deg); } } @keyframes show-7 { 0% { transform: rotate(135deg); } 50% { transform: rotate(185deg); } 100%{ transform: rotate(135deg); } } @keyframes show-8 { 0% { transform: rotate(135deg); } 50% { transform: rotate(205deg); } 100%{ transform: rotate(135deg); } } @keyframes show-9 { 0% { transform: rotate(135deg); } 50% { transform: rotate(225deg); } 100%{ 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; }
演示:
相关文章推荐
- CSS3 制作绽放的莲花
- 15个使用 CSS3 制作的漂亮作品展示网站
- HTML5+CSS3+jQuery制作视频播放器完全指南
- 使用 CSS3 实现超炫的 Loading(加载)动画效果以及cs3的在线制作工具
- 纯CSS3制作的 登录模板 简洁蓝白(非IE效果更好)
- css3三角形冒泡泡图形制作
- 使用CSS3属性(@media)制作网站响应式布局
- CSS3制作三角形
- css3 制作立方体
- 使用CSS3制作Loading动画
- 使用css3中的transfrom属性制作表头斜线
- 使用CSS3制作各种形状的图形
- css3样式表制作鼠标滑过导航条淡进淡出效果
- CSS3制作精美的iphone电话图标,不使用图片
- css3制作左右拉伸动画菜单
- 使用CSS3制作72个webapp图标
- Css3制作变形与动画效果
- Css3制作搜索框
- CSS3制作各种形状图像
- 解析:用 CSS3 和 JavaScript 制作径向动画菜单