代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3 星空旋转正方体</title>
    <style type="text/css">
    body{
        background-image:linear-gradient(to top,blue,#000);
    }
    *{
        padding: 0;
        margin:0;
    }
    #Mypage{
        /*-webkit-perspective:600px;
        -webkit-perspective-origin:50% 50%;*/
        -webkit-transform-style:preserve-3d;
        position: relative;
        width: 400px;
        height: 400px;
        margin:100px auto;
    }
    #Mypage li{
        list-style:none;
    }
    .pages{
        position: absolute;
        width:400px;
        height:400px;
    }
    #page1{
        background-color: #FF0088;
        -webkit-transform:translateZ(200px);
    }
    #page2{
        background-color: #FFFF00;
        -webkit-transform:rotateX(90deg) translateZ(200px);
    }
    #page3{
        background-color: #00FF00;
        -webkit-transform:rotateX(270deg) translateZ(200px);
    }
    #page4{
        background-color: #00FFFF;
        -webkit-transform:rotateY(90deg) translateZ(200px);
    }
    #page5{
        background-color: #7700FF;
        -webkit-transform:rotateY(270deg) translateZ(200px);
    }
    #page6{
        background-color: #FF00FF;
        -webkit-transform:translateZ(-200px);
    }
    #closth{
        margin: 0 auto;
        font-size: 18px;
        text-align: center;
        padding-top: 100px;
        float: left;
    }
    #closth div{
        padding-top: 20px;
        margin-bottom: 15px;
    }
    #closth div a{
        color: #fff;
        margin-right: 40px;
    }
    #heard{
        width: 80%;
        margin: 0 auto;
        margin-bottom: 300px;
    }
    #Opage{
        margin-top: 20px;
    }
    .wrap:first-child{
        margin-left: 400px;
    }
    .wrap{
        float: left;
        list-style: none outside none;
        padding-right: 40px;
    }
    .wrap a{
        color: #fff;
    }
    </style>
</head>
<body>
<div id="heard">
    <div id="closth">
        <div><a href="javascript:tops()">上翻</a></div>
        <div><a href="javascript:lefts()">左翻</a><a href="javascript:cleanth()">重置</a><a href="javascript:rights()">右翻</a></div>
        <div><a href="javascript:bottoms()">下翻</a></div>
    </div>
     <ul id="Mypage">
         <li class="pages" id="page1"><img width="400px" height="400px"></li>
         <li class="pages" id="page2"><img width="400px" height="400px"></li>
         <li class="pages" id="page3"><img width="400px" height="400px"></li>
         <li class="pages" id="page4"><img width="400px" height="400px"></li>
         <li class="pages" id="page5"><img width="400px" height="400px"></li>
         <li class="pages" id="page6"><img width="400px" height="400px"></li>
    </ul>
    <ul id="Opage">
        <li class="wrap"><a href="javascript:ones()">1</a></li>
        <li class="wrap"><a href="javascript:twos()">2</a></li>
        <li class="wrap"><a href="javascript:threes()">3</a></li>
        <li class="wrap"><a href="javascript:fours()">4</a></li>
        <li class="wrap"><a href="javascript:fives()">5</a></li>
        <li class="wrap"><a href="javascript:sixs()">6</a></li>
    </ul>
</div>
    <script type="text/javascript">
        var x=0;
        var y=0;
        var n,m=0;
        function cleanth(){
            x=0;
            y=0;
            n=0;
            m=0;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 20ms linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function count(){
            if(x%360==0){
                n=x/360;
            }
            if(y%360==0){
                m=y/360;
            }
        }
        function tops()
        {
            count();
            x+=90;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function bottoms(){
            count();
            x-=90;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";

        }
        function lefts(){
            count();
            y+=90;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";

        }
        function rights(){
            count();
            y-=90;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";

        }
        function ones(){
            count();
            x=0+n*360;
            y=0+m*360;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function twos(){
            count();
            x=-90+n*360;
            y=m*360+0;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function threes(){
            count();
            x=90+n*360;
            y=0+m*360;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function fours(){
            count();
            x=0+n*360;
            y=m*360-90;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function fives(){
            count();
            x=0+n*360;
            y=90+m*360;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
        function sixs(){
            count();
            x=180+n*360;
            y=0+m*360;
             var curpage=document.getElementById('Mypage');
             curpage.style.transition='-webkit-transform 3s linear';
             curpage.style.transform="rotateX("+x+"deg) rotateY("+y+"deg)";
        }
    </script>
</body>
</html>

CSS实现正方体旋转的更多相关文章

  1. 解惑:如何使用html+css+js实现旋转相册,立方体相册等动画效果

    解惑:如何使用html+css+js实现旋转相册,立方体相册等动画效果 一.前言 最初还是在抖音上看到可以使用简单地代码实现炫酷的网页效果的,但是想要找到可以运行的代码还是比较困难的,最近突然想起就在 ...

  2. 基于animation.css实现动画旋转特效

    分享一款基于animation.css实现动画旋转特效.这是一款基于CSS3实现的酷炫的动画旋转特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class ...

  3. CSS动画之旋转魔方轮播

    很久没有回头来复习CSS方面的知识了, 正好又到了月底写文章的deadline......所以这次选择了详细巩固一下CSS3动画有关的知识点,因为之前只是用过一些属性并没有深究细节. 在我自己写完这篇 ...

  4. 用html标签+css写出旋转的正方体

    有一段时间没写代码了,刚写有点手生,无从下手,为了能快速进入状态,就写了这一个小东西,纯用标签和样式表写.下面看一下我写的. 这一段是样式表: <style> *{ margin: 0; ...

  5. 纯CSS做3D旋转魔方

    昨天偶然看见网友(简单说 用CSS做一个魔方旋转的效果)做的一个3D旋转魔方  效果就是本博客右侧公告栏所示 在这里把做法展现出来 感兴趣的可以试试  做成自己特有的魔方 <!DOCTYPE h ...

  6. CSS缩放函数, 旋转函数与倾斜函数

       1 :缩放        scale(x,y)函数让元素根据中心原点对对象进行缩放,大于1进行放大,小于1则缩小,如果为负值,则先进行翻转再进行缩放操作. 实例: HTML: <div c ...

  7. 纯css代码写旋转动画

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 正方体旋转demo

    接着上一篇博客的内容顺藤摸瓜往下想,既然stage有景深这个概念,可以表达3D场景,那么这个stage就可以呈现立体几何咯,于是自己写了个Cubic Demo 一个正方体有6个面,我们把一个正方体平铺 ...

  9. 纯CSS实现立方体旋转

    下面为通过CSS动画实现的立方体旋转,可以改变CSS代码中关键帧定义(@keyframes)来改变立方体的旋转方式 HTML部分: <body class="body"> ...

随机推荐

  1. Ant :Property

     Property Ant 内置的Property 系统属性 Ant附加的属性 自定义Property Ant :Property properties是由key-value组成的集合,就是Java中 ...

  2. 【转】hive导入数据出现NULL

    在把hdfs上数据迁移到hive中的表时,若出现数据位NULL,是因为没有指定列分隔符. 由于hive默认的分隔符是/u0001(Ctrl+A),为了平滑迁移,需要在创建表格时指定数据的分割符号,语法 ...

  3. 动手实践 Linux VLAN - 每天5分钟玩转 OpenStack(13)

    本节我们来看如何在实验环境中实施和配置如下 VLAN 网络 配置 VLAN 编辑 /etc/network/interfaces,配置 eth0.10.brvlan10.eth0.20 和 brvla ...

  4. awk-实践

    实际中遇到的问题 字符串截取函数 substr #!/usr/bin/awk #author:zhaoyingnan #filename:substr.awk #substr 函数 #|awk -f ...

  5. Ubuntu 更新源失败[GPG error]

    对于错误 GPG error: http://ppa.launchpad.net precise Release: The following signatures couldn't be verif ...

  6. 直播时代--IOS直播客户端SDK,美颜直播【开源】

    当前视频直播非常火爆,手机端的视频直播也非常火爆,PGC.UGC的视频直播门槛都降低了很多. 本文介绍一个:IOS 客户端直播的SDK,代码完全开源. 直播时代:让IOS普通开发者一天内做出一个RTM ...

  7. (转)java DecimalFormat用法

    DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字. DecimalFormat 包含一个模式 和一组符号 符号含义:   0 一个数字   # 一个数字, ...

  8. jquery获取父元素及祖先元素

    parent是找当前元素的第一个父节点,parents是找当前元素的所有父节点 先说一下parent和parents的区别 从字面上不难看出 parent是指取得一个包含着所有匹配元素的唯一父元素的元 ...

  9. 搭建TFS 2015 Build Agent环境(二)

    在执行和安装配置的过程中,注意一定要使用管理员权限运行:ConfigureAgent.cmd 和RunAgent.cmd.配置的过程中,要注意几个内容:1.TFS地址不要写DefaultCollect ...

  10. SQLite剖析之事务处理技术

    前言 事务处理是DBMS中最关键的技术,对SQLite也一样,它涉及到并发控制,以及故障恢复等等.在数据库中使用事务可以保证数据的统一和完整性,同时也可以提高效率.假设需要在一张表内一次插入20个人的 ...