<html>
<head>
<meta charset="utf-8">
<title>纯CSS炫酷的3D旋转</title>

<style type="text/css">
.perspective{
  perspective:400px;

  /*perspective 属性定义 3D 元素距视图的距离,以像素计。该属性允许您改变 3D 元素查看 3D 元素的视图。

  当为元素定义 perspective 属性时,其子元素会获得透视效果,而不是元素本身。

  注释:perspective 属性只影响 3D 转换元素。*/

 
  position:relative;  /*relative 相对定位*/
  top:300px; /*离顶部的距离*/
  left:400px; /*离左边的距离*/

  width:300px; /*设置宽300px*/

  height:300px; /*设置高300px*/

}

/*去掉自定义列表的默认样式*/
ul{ margin:0; padding:0; list-style:none;}

/*让所有li重叠*/
.cube li{
  width:305px;
  height:305px;
  position:absolute;
  top:0; left:0;
}

/*设置li中div的样式,div也可以换成图片*/
.cube div{
  border:2px black solid;/*边框红色实线*/
  height:300px;
  width:300px;
}

div{width:100%;height:100%}

.cube{
  width:300px;
  transform:rotateY(45deg);  /*沿Y轴旋转*/
  transform-style:preserve-3d;  /*transform-style 属性规定如何在 3D 空间中呈现被嵌套的元素。*/
  animation:rotate 5s infinite linear;
}
 /*创建自定义动画*/
@keyframes rotate{
  0%{ transform:rotateZ(0deg) rotateX(360deg) rotateY(360deg); }
  100%{transform:rotateZ(0deg) rotateX(0deg) rotateY(0deg);}
}
.front{
  transform:rotateY(0deg) translateZ(150px);
  background:blue;
}
.back{
  transform:rotateY(180deg) translateZ(150px);
  background:green;
}
.left{
  transform:rotateY(90deg) translateZ(150px);
  background:yellow;
}
.right{
  transform:rotateY(-90deg) translateZ(150px);
  background:white;
}
.top{
  transform:rotateX(90deg) translateZ(150px);
  background:red;
}
.bottom{
  transform:rotateX(-90deg) translateZ(150px);
  background:orange;
}
</style>
</head>

<body>

<div class="perspective">
  <ul class="cube">
    <li class="front"><div></div></li>
    <li class="back"><div></div></li>
    <li class="left"><div></div></li>
    <li class="right"><div></div></li>
    <li class="top"><div></div></li>
    <li class="bottom"><div></div></li>
  </ul>
</div>
</body>
</html>

纯CSS炫酷的3D旋转的更多相关文章

  1. 纯CSS炫酷3D旋转立方体进度条特效

    在网站制作中,提高用户体验度是一项非常重要的任务.一个创意设计不但能吸引用户的眼球,还能大大的提高用户的体验.在这篇文章中,我们将大胆的将前面所学的3D立方体和进度条结合起来,制作一款纯CSS3的3D ...

  2. 基于jQuery和CSS3炫酷图片3D旋转幻灯片特效

    在线预览   源码下载 iPresenter是一款效果非常炫酷的jQuery和CSS3 3D旋转幻灯片特效插件.你可以使用它来制作产品展示.图片画廊或者各种幻灯片和轮播图特效.这款幻灯片插件的特点有: ...

  3. 初级开发者也能码出专业炫酷的3D地图吗?

    好看的3D地图搭建出来,一定是要能为开发者所用与业务系统开发中才能真正地体现价值.基因于此,CityBuilder建立了与ThingJS的通道——直转ThingJS代码,支持将配置完成的3D地图一键转 ...

  4. canvas - 炫酷的3D星空

    1.国际惯例,先上效果 (⊙o⊙)… 效果图看上去效果并不很炫酷啊,直接戳 这里 看效果吧! 2代码部分 html: <canvas id="canvas" width=&q ...

  5. WebGIS简单实现一个区域炫酷的3D立体地图效果

    1.别人的效果 作为一个GIS专业的,做一个高大上的GIS系统一直是我的梦想,虽然至今为止还没有做出一个理想中的系统,但是偶尔看看别人做的,学习下别人的技术还是很有必要的.眼睛是最容易误导我们的,有时 ...

  6. 17.1拓展之纯 CSS 创作炫酷的同心圆旋转动画

    效果地址:https://codepen.io/flyingliao/pen/ebjEMm?editors=1100 HTML代码: <div class="loader"& ...

  7. 【pano2vr】网页Flash中简单实现炫酷的3D模型制作

    花了两天时间学习如何能够高效的实现3D模型效果,毕竟是从0开始学习,感觉pano2vr这款软件挺容易上手,并且可以很容易实现简单的热点交互,可以根据交互需求设置皮肤,故将这一款软件推荐给大家: 1.简 ...

  8. 10.纯 CSS 创作一个同心圆弧旋转 loader 特效

    原文地址:https://segmentfault.com/a/1190000014682999 想到了扇形:正方形 ->border-radius: 50%; ->取四份中的任意一份. ...

  9. 24、Cocos2dx 3.0游戏开发找小三之网格动作:高炫酷的3D动作

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/37596763 网格动作类似于动作特效,能够实现翻转. ...

随机推荐

  1. 青年菜君与小农女送菜商业模式PK

    青年菜君与小农女送菜商业模式PK   对比项 青年菜君 小农女送菜 优势 劣势 开业 2014年3月3日 2013年9月 渠道 地铁捕获用户 写字楼配送 送货 来店面自取 送货到写字楼 菜君 1.减少 ...

  2. 使用LogKit进行日志操作

    1.      概述 任何一个系统中,日志都是不可缺少的,现在Apache提供了两套日志工具,一个就是Log4j,另一个是本文要给出例子的LogKit. Log4j和LogKit有很多相似的地方.比如 ...

  3. Hive操作语句实例讲解(帮助你了解 桶 bucket)

    http://blog.sina.com.cn/s/blog_66474b16010182yu.html这篇可以较好地理解什么是外部表external #创建表人信息表  person(String ...

  4. Android NDK开发三:java和C\C++交互

    转自:http://www.cnblogs.com/shangdahao/archive/2013/05/02/3053971.html 1.定义native方法并加载动态链接库: public cl ...

  5. C语言可变参实现参数累加返回

    C语言可变参的作用真的是非常大,自从发表了可变参如何实现printf,fprintf,sprintf的文章以来,便有不少博友私信问我实现的机制,我也解释了相关的知识点.今天,我们借着这个机会,再来举一 ...

  6. ruby中顶层定义的方法究竟放在哪里?

    ruby中顶层(top level)中定义的方法放在main中,证明如下: self.private_methods(false) #IN TOP LEVEL 那么methods方法究竟是在哪定义的, ...

  7. Java不走弯路教程(5.Client-Server模式(2)-Client)

    5.Client-Server模式(2)-Client 在上一章,我们完成一个简单的数据库服务器,并在客户端用telnet方式成功进行通信. 本章将用Java实现客户端程序,来代替telnet. 先看 ...

  8. Android studio 项目(Project)依赖(非Module)

    Android studio 项目(Project)依赖(非Module) 0. 前言 对于Module 级别的依赖大家都知道,今天说下Android Studio下的项目依赖. 场景: A Proj ...

  9. className.class.getResourceAsStream与ClassLoader.getSystemResourceAsStream区别

    className.class.getResourceAsStream : 一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类Test.class ,同时有资源文件conf ...

  10. 开启flume的远程调试功能

    各种组件,比如tomcat.storm.flume,我们都可以通过JMX方式开启远程调试,主要可以用来跟踪源码,了解程序内部的运行机制,其次,也有利于你修改源码. 首先,本质上是要修改flume本身启 ...