18.transform3d.html 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <style>
  8. * {
  9. margin: 0;
  10. padding: 0;
  11. }
  12. body {
  13. perspective: 1000px;
  14. }
  15. #box {
  16. width: 400px;
  17. height: 400px;
  18. border: 1px solid #000;
  19. margin: 100px auto;
  20. transform-style: preserve-3d;
  21. transform: perspective(1000px);
  22. transform-origin: center center;
  23. }
  24. #box1 {
  25. width: 200px;
  26. height: 200px;
  27. background: purple;
  28. /* margin: 100px auto; */
  29. transform: rotate3d(0,0.4,1,30deg);
  30. /* transform: translate3d(100px,100px,100px); */
  31. /* transform: translateZ(100px); */
  32. /* transform:scale3d(1,1,0.5) */
  33. }
  34. </style>
  35. </head>
  36. <body>
  37. <!--
  38. Transform-origin:X,Y;
  39. 功能:用来定义rotate旋转,skew倾斜和scale缩放的中心点;
  40. 说明:X,Y可以是具体的数值,也可以是百分比还可以是,left,center,top,bottom
  41. 1.左上角为(0,0)点 第一个参数代表x方向 第二个参数代表y方向;
  42. 2.如果设置左上角或者中心位置也可以使用关键字;
  43. transform-origin:left top;
  44. transform-origin:center center;
  45. transform-style:preserve-3d;//开启3D透视
  46. transform:perspective(1000px);//透视距离 (800-1200)
  47. 1.translate3d()括号中必须有3个参数:加快CPU的运行
  48. transform:translateZ();近大远小
  49. 2.transform:rotate3d(4个参数) rotate3d(1 1 1,30deg); 1是要旋转的意思,0是不旋转
  50. rotate3d后面必须指清旋转的3个方向
  51. 3. transform:scale3d(2,2,1<0-1取值范围>)如果有3d限定 必须传3个参数
  52. -->
  53. <div id="box">
  54. <div id="box1"></div>
  55. </div>
  56. </body>
  57. </html>