zoukankan      html  css  js  c++  java
  • css 3D相册,旋转木马练习

    html

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="UTF-8">
     5 <link rel="stylesheet" href="../css/whirligig.css">
     6 <script src="../js/jquery-2.1.4.min.js"></script>
     7 <title>旋转的木马</title>
     8 <style id="dynamic"></style>
     9 </head>
    10 <body>
    11   <input type="hidden" id="topPage" value="0">
    12   <div id="space3d">
    13     <div id="pagegroup">
    14       <img class="page page0" id="0" src="../images/cute/1.jpg" alt="夕月">
    15       <img class="page page1" id="1" src="../images/cute/2.jpg" alt="绿草">
    16       <img class="page page2" id="2" src="../images/cute/3.jpg" alt="夕阳">
    17       <img class="page page3" id="3" src="../images/cute/4.jpg" alt="花女">
    18       <img class="page page4" id="4" src="../images/cute/5.jpg" alt="冷夜">
    19       <img class="page page5" id="5" src="../images/cute/6.jpg" alt="海阳">
    20       <img class="page page6" id="6" src="../images/cute/7.jpg" alt="熏衣">
    21       <img class="page page7" id="7" src="../images/cute/8.jpg" alt="夕云">
    22     </div>
    23   </div>
    24 
    25 <script>
    26 $(function(){
    27     $(".page").click(function(){
    28         // javascript 类选择器..
    29     var _topPage = document.getElementById("topPage");
    30     var _pagegroup = document.getElementById("pagegroup");
    31     var _style = document.getElementById("dynamic"); // 本页面 style
    32     var myRules = document.styleSheets[0].rules; // 外部style
    33     
    34     var topPage = _topPage.value-0;  // 最前面page的id
    35     var clickPage = parseInt(this.id); // onclick page
    36     console.log("topPage:"+topPage+","+"clickPage"+clickPage);
    37     
    38     /* 修改外部css, myRules[3].cssText = '.a {color: green;}'; */
    39     myRules[3].style.transform = "rotateY("+(clickPage)*45+"deg)"; // 修改外部css
    40     
    41     /* 修改本页面css */
    42     _style.innerHTML = "@-webkit-keyframes rotateYleft{0%{transform:rotateY("+(topPage)*45
    43         +"deg);} 100% {transform:rotateY("+((clickPage+7)%8+1)*45+"deg);} }
    ";
    44     _topPage.setAttribute("value", clickPage);
    45     _pagegroup.className = "pagegroup1";
    46     window.setTimeout(function(){
    47       _pagegroup.className = 'pagegroup2'},1000);
    48         
    49     })
    50 })
    51 </script>
    52 </body>
    53 </html>

    css

    @CHARSET "UTF-8";
    
    #space3d {
      -webkit-perspective: 2000px;
      prespective:2000px;
      -webkit-perspective-origin: 50% 10%;
      prespective-orogin:50% 10%;
    }
    #pagegroup {
      position: relative;
      top: 200px;
      margin: 0 auto;
       420px;
      height: 262px;
      transform-style: preserve-3d;
    }
    .pagegroup1 {
      animation-name: rotateYleft;
      animation-duration: 1s;
      animation-fill-mode: forwards;
    }
    .pagegroup2 {
      transform:rotateY(0);
      transition: transform;
    }
    .page {
      position: absolute;
       420px;
      height: 262px;
      cursor: pointer;
    }
    .page0 {
       transform: translateZ(600px);
    }
    .page7 {
      transform: rotateY(45deg) translateZ(600px);
    }
    .page6 {
      transform: rotateY(90deg) translateZ(600px);
    }
    .page5 {
      transform: rotateY(135deg) translateZ(600px);
    }
    .page4 {
      transform: rotateY(180deg) translateZ(600px);
    }
    .page3 {
      transform: rotateY(225deg) translateZ(600px);
    }
    .page2 {
      transform: rotateY(270deg) translateZ(600px);
    }
    .page1 {
      transform: rotateY(315deg) translateZ(600px);
    }

     

  • 相关阅读:
    比尔盖茨,乔布斯,扎克伯格,Linus 等巨佬的办公桌
    快速从 Windows 切换到 Linux 环境
    海外开发者账号上架总结
    Chrome 浏览器对标签进行整理和分组的功能太棒了!
    最受嵌入式软件工程师青睐的系统
    我最喜欢的云 IDE 有哪些?
    前端zip包下载
    el-upload上传组件(隐藏上传按钮/隐藏文件删除标记)
    滚动条样式
    使用ul标签制作简单的菜单(vue模板)
  • 原文地址:https://www.cnblogs.com/kkcodin/p/5307332.html
Copyright © 2011-2022 走看看