通过Css3,我们能够创建动画,这可以在许多网页中取代一些JavaScript中复杂的动画效果的写法,下面让我们用css3实现一个旋转的立方体吧。

Html部分:
1)先给六个面写一个公共的类:cube-face,再给六个面分别给六个不同的类名:
< div class=“cube”>
< div class=“cube-face cube-face-front”>< /div>
< div class=“cube-face cube-face-left”>< /div>
< div class=“cube-face cube-face-back”>< /div>
< div class=“cube-face cube-face-right”>< /div>
< div class=“cube-face cube-face-top”>< /div>
< div class=“cube-face cube-face-bottom”>< /div>
< /div>

2)给body一个背景颜色,perspective可以使动画更有立体感:
body{
background: #222020;
perspective: 600px;/元素距视图的距离/
}
3)给cube宽高,相对定位和动画效果:
.cube{
width: 150px;
height: 150px;
position: relative;
top: 100px;
left: 45%;
transform-style: preserve-3d; /在3D空间中呈现被嵌套的元素,必须与transform属性一同使用/
animation: rotationMainContainer 5s linear infinite;/动画的名称,执行时间,匀速运动,无限次数/
创建动画,定义动画的名称,时长的百分比
@keyframes rotationMainContainer{
0%{
transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg);/* 元素围绕其X Y Z轴旋转的度数*/
}
100%{
transform: rotateX(360deg) rotateY(360deg) rotateZ(360deg);
}
}

4)给公共样式cube-face宽高,绝对定位:
.cube-face{
width: 150px;
height: 150px;
position:absolute;
/background: #0b63be;/
opacity: .5;/透明度/
}
5) 六个面的样式:
前面的面代码:
.cube-face-front{
transform: translatez(75px);/ z轴方向进行偏移75个像素/
animation: bgCAFace 5s linear infinite;
}
@keyframes bgCAFace{
0% {background: #1242B1;}
25% {background: #1925AF;}
50% {background: #1360C8;}
100%{background: #0A3CA0;}
}
一个面效果图:

后面的面代码:
.cube-face-back{
transform: translateZ(-75px);
animation: bgCABack 5s linear infinite;
}
@keyframes bgCABack{
0% {background: #1360C8;}
25% {background: #1242B1;}
50% {background: #1925AF;}
100%{background: #0A3CA0;}
}
两个面效果图:

左边的图代码:
.cube-face-left{
transform:rotateY(90deg) translateZ(75px);/y坐标旋转90度,z轴方向进行偏移75个像素/
animation: bgCALeft 5s linear infinite;
}
@keyframes bgCALeft{
0% {background: #1242B1;}
25% {background: #0A3CA0;}
50% {background: #1925AF;}
100%{background: #1360C8;}
}
三个面效果图:

右边的图代码:
.cube-face-right{
transform: rotateY(90deg) translateZ(-75px);
animation: bgCARight 5s linear infinite;
}
@keyframes bgCARight{
0% {background: #0A3CA0;}
25% {background: #1242B1;}
50% {background: #1360C8;}
100%{background: #1925AF;}
}
四个面效果图:

上边的图代码:
.cube-face-top{
transform: rotateX(90deg) translateZ(-75px);
animation: bgCATop 5s linear infinite;
}
@keyframes bgCATop{
0% {background: #1360C8;}
25% {background: #0A3CA0;}
50% {background: #1925AF;}
100%{background: #1242B1;}
}
五个面效果图:

下边的图代码:
.cube-face-bottom{
transform: rotateX(-90deg) translateZ(-75px);
animation: bgCABottom 5s linear infinite;
}
@keyframes bgCABottom{
0% {background: #1242B1;}
25% {background: #1360C8;}
50% {background: #1925AF;}
100%{background: #0A3CA0;}
}
完成图:

用Css3实现旋转的立方体相关推荐

  1. CSS3 3D旋转图片立方体特效

    CSS3 3D旋转图片立方体特效代码. 效果图: 这是一个3D的立方体盒子 给盒子添加动画属性 使其可以转动. 原理: 原理其实很简单 我们看到的一个立方体其实就是靠六个平面搭建起来的 如图所示 :六 ...

  2. css3 3d旋转图片立方体特效代码

    纯 CSS3 3D 旋转立方体动画特效,该 3D 立方体使用 CSS3 perspective 制作,可以在水平方向.垂直方向和平面视角方向旋转,使用 CSS 来制作立方体动画,效果非常好.下面来看看 ...

  3. CSS3 3d旋转图片立方体案例演示

    2D动画旋转和位移的基础语法 旋转的基础: 语法:transform:rotate() 1:旋转的是一个度数deg 2:默认情况下,绕着一个中心点进行转动 3:transform:rotatex()绕 ...

  4. 【HTML】css3实现旋转的立方体相册

    立体相册源码 使用时请保存为*.html格式 <!DOCTYPE HTML> <html lang="en"> <head><meta c ...

  5. 网页特效:用CSS3制作3D图片立方体旋转特效

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  6. 如何用css3制作一个旋转的立方体

    css3增加的动画效果使得前端制作某些动画更加方便,流畅,如何制作一个最简单的会旋转的立方体呢?话不多说,直接上代码! html代码如下,需要一个大的div包裹六个div作为立方体的六个表面 < ...

  7. CSS3 3D旋转立方

    ##一.3D中的透视        1.透视是我们观察事物的方式        在美术学中,有一种画法叫做透视画法,他让我们对所观察的物体从二维拓展到三维,也就是说,平面的物体变成了立体,占据了独自的 ...

  8. OpenGL设置透视投影并渲染旋转的立方体

    OpenGL设置透视投影并渲染旋转的立方体 先上图,再解答. 完整主要的源代码 源代码剖析 先上图,再解答. 完整主要的源代码 #include <GLXW/glxw.h> #includ ...

  9. 用css3制作旋转加载动画的几种方法

    2019独角兽企业重金招聘Python工程师标准>>> 以WebKit为核心的浏览器,例如Safari和Chrome,对HTML5有着很好的支持,在移动平台中这两个浏览器对应的就是i ...

最新文章

  1. Excel导入异常Cannot get a text value from a numeric cell解决
  2. python批量删除特定字符_根据某个特定字符删除一行
  3. 皮一皮:20岁和30岁的你的区别...
  4. Shell排序的原理与集体实现
  5. 高性能云网关,打通云内外业务互通的任督二脉
  6. 精简ICO图标可减小EXE程序文件大小
  7. oracle数据库的关于建表的sql语句练习
  8. python的反转_Python 反转
  9. echart4.0 map支持dataset实例
  10. Ana是什么软件?是PLC-Recorder配套的用于工业数据分析的专业软件
  11. GC日志分析神器-GCEasy详解
  12. 转载-30分钟搞定后台登录界面(103个后台PSD源文件、素材网站)
  13. 少一点张扬,多一点谦虚;少一点英雄主义,多一点实事求是——读2008第11期《IT经理世界》
  14. 母亲节不能陪在妈妈身边,我用css和js给妈妈做了一个爱心飘落
  15. linux打包tar包命令,Linux tar打包命令详解
  16. halcon相机标定助手_halcon相机标定和图像矫正
  17. 几种生成验证码的方式以及计算表达式的计算
  18. 10款手机应用程序 令生活轻松方便
  19. “中科杯”全国软件设计大赛决赛实录
  20. Matlab画分段函数

热门文章

  1. 几分钟计算机不操作就注销,win10系统长时间不操作就自动注销的方案
  2. 线上引流压测工具Meteor
  3. sun java 考试_Sun Java认证考试科目
  4. 如何卸载Visio秘钥
  5. 加入滚动条的html代码
  6. Popular MVC框架请求响应数据加解密@Decrypt和@Encrypt的使用示例
  7. Long与Integer之间的转换产生的问题
  8. 【Matplotlib】三维图及其俯视图+colorbar的位置调整与颜色、刻度细化
  9. c语言字符怎么运算,c语言运算符号(c语言如何输入运算符号)
  10. C语言——数组练习题