zoukankan      html  css  js  c++  java
  • 旋转的立方体

    最近总是纠结去哪里吃饭,所以就想着做了一个色子,也算是朝花夕拾了,最后做出来的是一个旋转的立方体,整体美感还好:实现了永久旋转,悬浮停止和突出及一个分散的效果:以下是代码:
    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>立方体旋转</title> <style type="text/css"> *{ margin:0 auto; padding:0; } @keyframes rotate{ 0%{ transform:rotateX(0deg) rotateY(0deg); } 100%{ transform:rotateX(360deg) rotateY(360deg); } } html{ height:100%; } .wrap{ 200px; height: 200px; margin-top:200px; perspective: 1000px; } .cube{ 200px; height:200px; position:relative; color:#fff; font-size:36px; text-align:center; line-height:200px; transform-style:preserve-3d; transform:rotateX(-30deg) rotateY(-70deg); animation:rotate 20s infinite linear;
    } .cube > div{ 100%; height:100%; border:1px solid #fff; position:absolute; background:rgba(0,0,0,.5); opacity:.5; transition:transform 0.5s ease-out; } .cube > div >img{ 200px; height: 200px; } .cube .out-front{ transform: translateZ(100px); } .cube .out-back{ transform: translateZ(-100px) rotateY(180deg); } .cube .out-left{ transform: translateX(-100px) rotateY(-90deg); } .cube .out-right{ transform: translateX(100px) rotateY(90deg); } .cube .out-top{ transform: translateY(-100px) rotateX(90deg); } .cube .out-bottom{ transform: translateY(100px) rotateX(-90deg); } .cube .in-front{ transform: translateZ(50px); } .cube .in-back{ transform: translateZ(-50px) rotateY(180deg); } .cube .in-left{ transform: translateX(-50px) rotateY(-90deg); } .cube .in-right{ transform: translateX(50px) rotateY(90deg); } .cube .in-top{ transform: translateY(-50px) rotateX(90deg); } .cube .in-bottom{ transform: translateY(50px) rotateX(-90deg); } .wrap:hover .out-front{ transform: translateZ(200px); } .wrap:hover .out-back{ transform: translateZ(-200px) rotateY(180deg); } .wrap:hover .out-left{ transform: translateX(-200px) rotateY(-90deg); } .wrap:hover .out-right{ transform: translateX(200px) rotateY(90deg); } .wrap:hover .out-top{ transform: translateY(-200px) rotateX(90deg); } .wrap:hover .out-bottom{ transform: translateY(200px) rotateX(-90deg); } </style> </head> <body> <div class="wrap"> <div class="cube cubeX"> <div class="out-front"><img src="./img/1.jpg" alt=""></div> <div class="out-back">kim</div> <div class="out-left"><img src="./img/3.jpg" alt=""></div> <div class="out-right"><img src="./img/4.jpg" alt=""></div> <div class="out-top"><img src="./img/5.jpg" alt=""></div> <div class="out-bottom"><img src="./img/6.jpg" alt=""></div> </div> </div> </body> <script type="text/javascript" src="jquery-1.8.1.js"></script> <script> $(".cube > div").mouseover(function(){ $(".cube").css({"animation-play-state":"","animation-duration":"7s"}); $(this).css("opacity",1); }).mouseout(function(){ $(".cube").css({"animation-play-state":"","animation-duration":"20s"}); $(this).css("opacity",.5); }) </script> </html>

    以上利用了transform属性和旋转的属性,实现了立方体的拼接,旋转。整体代码巨简单,jq因为是本地引入,具体路径与版本需看自己的情况。

      

     

  • 相关阅读:
    Bzoj_1562 [NOI2009]变换序列
    Bzoj_1443 [JSOI2009]游戏Game
    Bzoj_3572 [Hnoi2014]世界树
    【python】按顺序排列组合输出字符串
    【python】通过LibreOffice把html文件转换成docx文件
    【python】判断一个地址是ipv4还是ipv6
    【python】判断一个字符串是否是数字
    【python】ImportError: cannot import name 'QWebView'
    【python】ModuleNotFoundError: No module named 'PyQt5.QtWebKitWidgets'
    【GNS3】Error 9: Unknown boot failure
  • 原文地址:https://www.cnblogs.com/wyliunan/p/8295797.html
Copyright © 2011-2022 走看看