魔方旋转代码效果图展示

image.png

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>魔方</title>
  6. <style type="text/css">
  7. body{
  8. -webkit-perspective: 800px;
  9. perspective: 800px;
  10. -webkit-perspective-origin: 70% 0%;
  11. perspective-origin: 70% 0%;
  12. margin: 0 auto;
  13. background: rgba(0,0,255,0.5);
  14. }
  15. .dice{
  16. position: relative;
  17. left: 45%;
  18. top: 250px;
  19. display: inline-block;
  20. width: 100px;
  21. height: 100px;
  22. margin: 10px;
  23. -webkit-transform-style: preserve-3d;
  24. transform-style: preserve-3d;
  25. }
  26. .dice > div{
  27. position: absolute;
  28. width: 100%;
  29. height: 100%;
  30. box-shadow: inset 0 0 20px rgba(0,0,0,.8);
  31. text-align: center;
  32. line-height: 100px;
  33. }
  34. .d1{
  35. -webkit-transform: rotate3d(50,50,50,0deg);
  36. transform: rotate3d(50,50,50,0deg);
  37. }
  38. .f1 > div{
  39. margin: 0px;
  40. padding: 0px;
  41. width: 31px;
  42. height: 31px;
  43. border: 1px solid black;
  44. /*设置边框线*/
  45. float: left;
  46. /*靠左浮动*/
  47. border-radius: 3px;
  48. /*这是边框圆角*/
  49. }
  50. .d1 > div{
  51. backface-visibility: hidden;
  52. /*背面不可见*/
  53. }
  54. .front{
  55. background: blue;
  56. -webkit-transform: translateZ(50px);
  57. transform: translateZ(50px);
  58. }
  59. .back{
  60. background: #0bea26;
  61. -webkit-transform: rotateY(180deg) translateZ(50px);
  62. transform: rotateY(180deg)translateZ(50px);
  63. }
  64. .left{
  65. background: red;
  66. -webkit-transform: rotateY(-90deg) translateZ(50px);
  67. transform: rotateY(-90deg) translateZ(50px);
  68. }
  69. .right{
  70. background: #ff7600;
  71. -webkit-transform: rotateY(90deg) translateZ(50px);
  72. transform: rotateY(90deg) translateZ(50px);
  73. }
  74. .top{
  75. background: white;
  76. -webkit-transform: rotateX(90deg) translateZ(50px);
  77. transform: rotateX(90deg) translateZ(50px);
  78. }
  79. .bottom{
  80. background: yellow;
  81. -webkit-transform: rotateX(-90deg) translateZ(50px);
  82. transform: rotateX(-90deg) translateZ(50px);
  83. }
  84. .d1:hover{
  85. -webkit-transform: rotate3d(50,50,50,800deg);
  86. transform: rotate3d(50,50,50,800deg);
  87. transition: transform 5s ease-in-out 0.2s;
  88. }
  89. </style>
  90. </head>
  91. <body>
  92. <div class="dice d1">
  93. <div class="f1 front">
  94. <div></div>
  95. <div></div>
  96. <div></div>
  97. <div></div>
  98. <div></div>
  99. <div></div>
  100. <div></div>
  101. <div></div>
  102. <div></div>
  103. </div>
  104. <div class="f1 back">
  105. <div></div>
  106. <div></div>
  107. <div></div>
  108. <div></div>
  109. <div></div>
  110. <div></div>
  111. <div></div>
  112. <div></div>
  113. <div></div>
  114. </div>
  115. <div class="f1 left">
  116. <div></div>
  117. <div></div>
  118. <div></div>
  119. <div></div>
  120. <div></div>
  121. <div></div>
  122. <div></div>
  123. <div></div>
  124. <div></div>
  125. </div>
  126. <div class="f1 right">
  127. <div></div>
  128. <div></div>
  129. <div></div>
  130. <div></div>
  131. <div></div>
  132. <div></div>
  133. <div></div>
  134. <div></div>
  135. <div></div>
  136. </div>
  137. <div class="f1 top">
  138. <div></div>
  139. <div></div>
  140. <div></div>
  141. <div></div>
  142. <div></div>
  143. <div></div>
  144. <div></div>
  145. <div></div>
  146. <div></div>
  147. </div>
  148. <div class="f1 bottom">
  149. <div></div>
  150. <div></div>
  151. <div></div>
  152. <div></div>
  153. <div></div>
  154. <div></div>
  155. <div></div>
  156. <div></div>
  157. <div></div>
  158. </div>
  159. </div>
  160. </body>
  161. </html>