html + css实现3d立方体

css代码

/*页面背景色*/
body{
background-color: black;
background-repeat:no-repeat;
} /********************** 双层3D立方体 *********************/ /*最外层容器*/
.wrap{
margin: 360px;
left: 80px;
width: 200px;
height: 200px;
position: relative; /*3D模式展示*/
transform-style: preserve-3d; /*引入动画:动画名称 展示时间 循环展示*/
animation: rotate 150s infinite; /*匀速展示*/
animation-timing-function: linear;
} /**************************** 设置内层立方体组件的属性 ****************************/ /* 设置内部组件属性 */
.wrap span{
display: block;
position: absolute;
width: 200px;
height: 200px;
top: 0;
left: 0; /*透明度*/
/*opacity: 0.8;*/
} /*内部正方形旋转平移 组装成内部立方体*/ .i-top{
transform: rotateX(90deg) translateZ(100px);
background-image: url("../resources/images/xinhaicheng/i6.png");
} .i-bottom{
transform: rotateX(90deg) translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/i2.png");
} .i-right{
transform: rotateY(90deg) translateZ(100px);
background-image: url("../resources/images/xinhaicheng/i1.png"); } .i-left{
transform: rotateY(90deg) translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/i5.jpeg");
} .i-front{
transform: translateZ(100px);
background-image: url("../resources/images/xinhaicheng/i3.png");
} .i-back{
transform: translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/i4.png");
} /*具体动画效果,由关键帧来刻画*/
@keyframes rotate{ /*开始*/
0%{
transform: rotateX(0deg) rotateY(0deg);
} /*中间*/
50%{ transform: rotateY(360deg) rotateX(-90deg);
} /*结束*/
100%{ transform: rotateX(0deg) rotateY(0deg);
} } /*************************** 设置外层立方体属性 ********************/ /* 设置外部组件属性 */
.wrap div{
width: 200px;
height: 200px;
position: absolute; /*透明度*/
opacity: 0.9; /*外部组件打开效果所用的时间*/
transition: all 1s; } /*外部正方形旋转平移 组装成外部立方体*/ .o-top{
transform: rotateX(90deg) translateZ(100px);
background-image: url("../resources/images/xinhaicheng/o2.jpg");
} .o-bottom{
transform: rotateX(90deg) translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/o5.jpg");
} .o-right{
transform: rotateY(90deg) translateZ(100px);
background-image: url("../resources/images/xinhaicheng/o4.jpeg"); } .o-left{
transform: rotateY(90deg) translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/o3.jpg");
} .o-front{
transform: translateZ(100px);
background-image: url("../resources/images/xinhaicheng/o6.jpeg");
} .o-back{
transform: translateZ(-100px);
background-image: url("../resources/images/xinhaicheng/o1.png");
} /*打开效果*/
.wrap:hover .o-bottom{
transform: rotateX(90deg) translateZ(-250px);
} .wrap:hover .o-top{
transform: rotateX(90deg) translateZ(250px);
} .wrap:hover .o-left{
transform: rotateY(90deg) translateZ(-250px);
} .wrap:hover .o-right{
transform: rotateY(90deg) translateZ(250px);
} .wrap:hover .o-front{
transform: translateZ(250px);
} .wrap:hover .o-back{
transform: translateZ(-250px);
}

html代码

<!-- 准备一个容器 -->
<div class="wrap"> <!-- 创建内部立方体组件 -->
<span class="i-front"></span>
<span class="i-back"></span>
<span class="i-left"></span>
<span class="i-right"></span>
<span class="i-top"></span>
<span class="i-bottom"></span> <!-- 创建外部立方体组件 -->
<div class="o-front"></div>
<div class="o-back"></div>
<div class="o-left"></div>
<div class="o-right"></div>
<div class="o-top"></div>
<div class="o-bottom"></div> </div>

html + css 01: 3d立方体的更多相关文章

  1. 纯CSS绘制3D立方体

    本篇记录的是使用CSS3绘制3D立方体,并旋转起来. 我的思路: 1️⃣ 首先,用div元素画6个正方形摞在一起放在画布中间.为了区分,分别给每个div选择了不同的颜色,并且设置为半透明方便透视. 2 ...

  2. 用css实现3D立方体旋转特效

    先来看运行后出来的效果 它是在不停运行的一个立方体 先来看html部分的代码 <div class="rect-wrap"> <!--舞台元素,设置perspec ...

  3. css实现3D立方体旋转特效

    先来看运行后出来的效果 它是在不停运行的一个立方体 先来看html部分的代码 <div class="rect-wrap"> <!--舞台元素,设置perspec ...

  4. CSS动画实例:3D立方体

    CSS3支持3D转换,与3D转换有关的属性有: transform:向元素应用 2D或3D 转换. transform-origin:改变被转换元素的位置. transform-style:规定被嵌套 ...

  5. CSS3 3D立方体效果-transform也不过如此

    CSS3系列已经学习了一段时间了,第一篇文章写了一些css3的奇技淫巧,原文戳这里,还获得了较多网友的支持,在此谢过各位,你们的支持是我写文章最大的动力^_^. 那么这一篇文章呢,主要是通过一个3D立 ...

  6. css3-实现3D立方体旋转

    核心内容: 1.CSS3 中 animation.perspective 属性的熟练运用. 2.CSS3 中的变形属性 transform,在 3D 立体效果中的运用. 3.3D 立方体旋转实现原理. ...

  7. 基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转

    基于css3新属性transform,实现3d立方体的旋转 通过原生JS,点击事件,鼠标按下.鼠标抬起和鼠标移动事件,实现3d立方体的拖动旋转,并将旋转角度实时的反应至界面上显示 实现原理:通过获取鼠 ...

  8. css3实践—创建3D立方体

    css3实践-创建3D立方体 要想实现3D的效果,其实非常简单,只需指定一个元素为容器并设置transform-style:preserve-3d,那么它的后代元素便会有3D效果.不过有很多需要注意的 ...

  9. 仿智能社官网:原生JS实现简单又酷炫的3D立方体时钟

    先放一下我做的效果:https://linrunzheng.github.io/3Dclock/3Dclock/new.html 至于3D立方体怎么做这里就不在阐述了,可以看一下我之前的博客. 这里默 ...

随机推荐

  1. 【Azure Redis 缓存】 Python连接Azure Redis, 使用redis.ConnectionPool 出现 "ConnectionResetError: [Errno 104] Connection reset by peer"

    问题描述 Python连接Azure Redis, 使用redis.ConnectionPool 出现 "ConnectionResetError: [Errno 104] Connecti ...

  2. C# WPF后台动态添加控件(经典)

    概述 在Winform中从后台添加控件相对比较容易,但是在WPF中,我们知道界面是通过XAML编写的,如何把后台写好的控件动态添加到前台呢?本节举例介绍这个问题. 这里要用到UniformGrid布局 ...

  3. 让 API 测试变的简单。

    做开发已经四年有余了,之前在接口测试的时候最开始用的自己写的测试类进行测试,后来接触到了 postman 和 swagger ,虽然用起来比自己写的强太多了,但是总觉得差点事儿. 一方面是 postm ...

  4. 125_Power BI 中 DAX 的性能测试

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 最近在看DAX"圣经"第二版<The Definitive Guide to DAX ...

  5. 文件操作(Java)

    学习内容:文件操作        1.输入流:InputStream类是字节输入流的抽象类,常用的一些方法有: raed()方法:从输入流中读取数据的下一个字节 reset()方法:将输入指针返回到当 ...

  6. 使用pdfcrack & crunch暴力破解PDF密码

    crunch是密码字典生成器,可以根据指定的字符来生成组合密码字典. pdfcrack是Linux下一个PDF暴力破解密工具,可以使用crunch生成的密码字典来暴力破解PDF文件的密码. 注:没有强 ...

  7. 2021.03.06【NOIP提高B组】模拟 总结

    T1 看起来十分复杂,打表后发现答案是 \(n*m\mod p\) 具体的证明... 原式的物理意义,就是从坐标原点(0,0),用每一种合法的斜率, 穿过坐标[1 ~ n , 1 ~ m]的方阵中的整 ...

  8. C语言- 基础数据结构和算法 - 栈的链式存储

    听黑马程序员教程<基础数据结构和算法 (C版本)>, 照着老师所讲抄的, 视频地址https://www.bilibili.com/video/BV1vE411f7Jh?p=1 喜欢的朋友 ...

  9. 在Winform开发中,使用Async-Awati异步任务处理代替BackgroundWorker

    在Winform开发中有时候我们为了不影响主UI线程的处理,以前我们使用后台线程BackgroundWorker来处理一些任务操作,不过随着异步处理提供的便利性,我们可以使用Async-Awati异步 ...

  10. php 图片转换二进制数

    $image = "1.jpg"; //图片地址 $fp = fopen($image, 'rb'); $content = fread($fp, filesize($image) ...