<style><!--
@charset "UTF-8"; * { margin: 0; padding: 0 } html,body{ width: 100%; height: 100%;
}
.container { text-align: center; margin: 50px auto; width: 200px;
}
.cube { transform-style: preserve-3d; -webkit-transform-origin: 54px 54px 54px; -moz-transform-origin: 54px 54px 54px; -ms-transform-origin: 54px 54px 54px; -o-transform-origin: 54px 54px 54px; transform-origin: 54px 54px 54px; -webkit-animation: cube ease-in-out 6s infinite forwards; -o-animation: cube ease-in-out 6s infinite forwards; animation: cube ease-in-out 6s infinite forwards;
} @keyframes cube { from, to {
} 16% { transform: rotatey(-90deg);
} 33% { transform: rotatey(-90deg) rotatez(135deg);
} 50% { transform: rotatey(225deg) rotatez(135deg);
} 66% { transform: rotatey(135deg) rotatex(135deg);
} 83% { transform: rotatex(135deg);
}
}
.page { width: 108px; height: 108px; position: absolute;
}
.page .row { width: 108px; height: 36px; float: left;
}
.page span { display: inline-block; width: 30px; height: 30px; border: 3px solid #000; border-radius: 5px;
}
.up { -webkit-transform: translateY(54px) rotateX(90deg); -moz-transform: translateY(54px) rotateX(90deg); -ms-transform: translateY(54px) rotateX(90deg); -o-transform: translateY(54px) rotateX(90deg); transform: translateY(54px) rotateX(90deg);
}
.down { -webkit-transform: translateY(-54px) rotateX(-90deg); -moz-transform: translateY(-54px) rotateX(-90deg); -ms-transform: translateY(-54px) rotateX(-90deg); -o-transform: translateY(-54px) rotateX(-90deg); transform: translateY(-54px) rotateX(-90deg);
}
.front { -webkit-transform: translateZ(54px); -moz-transform: translateZ(54px); -ms-transform: translateZ(54px); -o-transform: translateZ(54px); transform: translateZ(54px);
}
.back { -webkit-transform: translateZ(-54px); -moz-transform: translateZ(-54px); -ms-transform: translateZ(-54px); -o-transform: translateZ(-54px); transform: translateZ(-54px);
}
.left { -webkit-transform: translateX(-54px) rotateY(-90deg); -moz-transform: translateX(-54px) rotateY(-90deg); -ms-transform: translateX(-54px) rotateY(-90deg); -o-transform: translateX(-54px) rotateY(-90deg); transform: translateX(-54px) rotateY(-90deg);
}
.right { -webkit-transform: translateX(54px) rotateY(90deg); -moz-transform: translateX(54px) rotateY(90deg); -ms-transform: translateX(54px) rotateY(90deg); -o-transform: translateX(54px) rotateY(90deg); transform: translateX(54px) rotateY(90deg);
} span.white { background: white } span.yellow { background: yellow } span.blue { background: blue } span.green { background: green } span.orange { background: orange } span.red { background: red }
--></style>
<!-- 上黄下白 前蓝后绿 左橙右红 -->

<div id="container" class="container"> 
<div id="cube" class="cube">
<div id="up" class="page up">
<div class="row row1"><span class="yellow"></span><span class="yellow"></span><span class="yellow"></span></div>
<div class="row row2"><span class="yellow"></span><span class="yellow"></span><span class="yellow"></span></div>
<div class="row row3"><span class="yellow"></span><span class="yellow"></span><span class="yellow"></span></div>
</div>
<div id="down" class="page down">
<div class="row row1"><span class="white"></span><span class="white"></span><span class="white"></span></div>
<div class="row row2"><span class="white"></span><span class="white"></span><span class="white"></span></div>
<div class="row row3"><span class="white"></span><span class="white"></span><span class="white"></span></div>
</div>
<div id="front" class="page front">
<div class="row row1"><span class="blue"></span><span class="blue"></span><span class="blue"></span></div>
<div class="row row2"><span class="blue"></span><span class="blue"></span><span class="blue"></span></div>
<div class="row row3"><span class="blue"></span><span class="blue"></span><span class="blue"></span></div>
</div>
<div id="back" class="page back">
<div class="row row1"><span class="green"></span><span class="green"></span><span class="green"></span></div>
<div class="row row2"><span class="green"></span><span class="green"></span><span class="green"></span></div>
<div class="row row3"><span class="green"></span><span class="green"></span><span class="green"></span></div>
</div>
<div id="left" class="page left">
<div class="row row1"><span class="orange"></span><span class="orange"></span><span class="orange"></span></div>
<div class="row row2"><span class="orange"></span><span class="orange"></span><span class="orange"></span></div>
<div class="row row3"><span class="orange"></span><span class="orange"></span><span class="orange"></span></div>
</div>
<div id="right" class="page right">
<div class="row row1"><span class="red"></span><span class="red"></span><span class="red"></span></div>
<div class="row row2"><span class="red"></span><span class="red"></span><span class="red"></span></div>
<div class="row row3"><span class="red"></span><span class="red"></span><span class="red"></span></div>
</div>
</div>
</div>

css3 3d  魔方的更多相关文章

  1. css3之3D魔方动画(小白版)

      在这里分享一下3D魔方动画,html5+CSS3即可完成~无图无真相,先上效果图 第一步非常简单,就是先将魔方的结构画出来.大家都玩过魔方,知道魔方是一个有六个面的正方体.这里我们先写一个大的di ...

  2. 如何用CSS3画出懂你的3D魔方?

    作者:首席填坑官∙苏南公众号:honeyBadger8,群:912594095,本文原创,著作权归作者所有,转载请注明原链接及出处. 前言 最近在写<每周动画点点系列>文章,上一期分享了& ...

  3. css3 3d学习心得

    css3 3d学习心得 卡片反转 魔方 banner图 首先我们要学习好css3 3d一定要有一定的立体感 通过这个图片应该清楚的了解到了x轴 y轴 z轴是什么概念了. 首先先给大家看一个小例子: 卡 ...

  4. 一篇文章搞定css3 3d效果

    css3 3d学习心得 卡片反转 魔方 banner图 首先我们要学习好css3 3d一定要有一定的立体感 通过这个图片应该清楚的了解到了x轴 y轴 z轴是什么概念了. 首先先给大家看一个小例子: 卡 ...

  5. CSS3 3D的总结(初学者易懂)

    CSS3 3D案例的总结 如果要说是3D的基础概念,首先我就来说一说rotateX().rotateY().rotateZ()这几个属性 rotateX():对应的是3D模型中的X轴上的旋转,传入的参 ...

  6. CSS3实现魔方动画

    本文将借助css3实现魔方动画效果,设计思路如下: HTML方面采用六个div容器形成六个立方面: CSS方面采用transform-style: preserve-3d;形成三维场景:transfo ...

  7. 【Web动画】CSS3 3D 行星运转 && 浏览器渲染原理

    承接上一篇:[CSS3进阶]酷炫的3D旋转透视 . 最近入坑 Web 动画,所以把自己的学习过程记录一下分享给大家. CSS3 3D 行星运转 demo 页面请戳:Demo.(建议使用Chrome打开 ...

  8. 纯css3 3D图片立方体旋转动画特效

    纯css3 3D立方体模块,鼠标触碰,模块炸开,大立方体中套小立方体 效果展示 手机扫描二维码体验效果: 效果图如下: 源码下载:http://hovertree.com/h/bjaf/0qmul8g ...

  9. CSS3 3D轮播主要可以分成这样的三类

    中秋节假期这么快就没了,这几天还一直下雨,索性在家看看书.这次看的是Tom Lane的<A Tour of PostgreSQL Internals>.这篇小随笔就算做学习笔记了.园子里面 ...

  10. css3 3D旋转效果

    css3 record2 css3 3D旋转效果 需理解transform css3知识: keyframes transform perspective jsfiddle demo keyframe ...

随机推荐

  1. Java循环遍历中直接修改遍历对象

    Java 循环遍历中直接修改遍历对象如下,会报异常: for (ShopBaseInfo sp: sourceList) { if(sp.getId()==5){ sourceList.remove( ...

  2. SEO 爬虫原理介绍

    一篇关于网络爬虫程序的一些原理及体系结构纯技术文章,一些地方可能不会看的非常明确.对于SEO行业,常常和搜索引擎及其爬虫程序打交道,细致浏览下,一些不清楚而自己又非常想了解的地方,能够借助搜索来需找相 ...

  3. Android基础新手教程——3.4 TouchListener PK OnTouchEvent + 多点触碰

    Android基础新手教程--3.4 TouchListener PK OnTouchEvent + 多点触碰 标签(空格分隔): Android基础新手教程 本节引言: 如题,本节给大家带来的是To ...

  4. Kinect for Windows SDK v2.0 开发笔记 (十五) 手势帧

     (转载请注明出处) 使用SDK: Kinect for Windows SDK v2.0 public preview1409 同前面,由于SDK未完毕,不附上函数/方法/接口的超链接. 这次最 ...

  5. BZOJ1053 反素数

    题目大意 对于任何正整数x,其约数的个数记作g(x).如果某个正整数x满足对任意的0<i<x,都有g(x)>g(i) ,则称x为反质数.现在给定一个数N,求出不超过N的最大的反质数. ...

  6. Referenced file contains errors (http://www.springframework.org/schema/beans/spring-beans-3.0.xsd)

    问题: java项目在Eclipse中xml有小红叉 Problems:Referenced file contains errors (http://www.springframework.org/ ...

  7. c++迭代器失效问题

    参考两篇文章:https://blog.csdn.net/skyroben/article/details/70877008 https://lichanghao.github.io/2016/08/ ...

  8. 如何提升SQL语句的查询性能

    在对数据库进行操作时,如果SQL语句书写不当,对程序的效率会造成很大影响. 提高SQL效率可以从一下几个方面入手: 1,数据库设计与规划 Primary Key字段的长度尽量小,能用small int ...

  9. BZOJ-4706 B君的多边形 OEIS

    题面 题意:有一个正n多边形,我们要连接一些对角线,把这个多边形分成若干个区域,要求连接的对角线不能相交,每个点可以连出也可以不连出对角线,即最终不要求所有区域均为三角形,问总方案数mod (10^9 ...

  10. JS form 表单收集 数据 formSerialize

    做后台系统的时候通常会用到form表单来做数据采集:每次一个字段一个字段的去收集就会很麻烦,网站也有form.js插件可以进行表单收集,并封装成一个对象,通过ajax方法传到后台:现在介绍一种直觉采集 ...