css 3d basics

高洛峰
高洛峰Original
2017-02-11 11:42:411093browse

css3d summary

3d transform (3D deformation) (rotate skew scale translate)

Basic knowledge

perspective (viewing distance, depth of field) perspective-origin (viewpoint)
transfrom

(1) Coordinates x y z

(2) Transformation base point position transform-origin
(3)transfrom-style: preserve-3d

3D Rotate picture album

css 3d    基础知识
3d transform (rotate skew scale translate)

Basic knowledge

perspective (viewing distance, depth of field) perspective- origin (viewpoint)
transfrom

(1) Coordinates x y z

(2) Transformation base point position transform-origin
(3)transfrom-style:preserve-3d

3D Rotating Picture Album

css 3d basics
It uses a relatively simple coordinate y-axis rotation. Let’s take a look at his code

html code:
  ccb2c6a6f93063c799f538e241ce8db3
    ada5762ba3aad440306517031eafe2cdbdf9b2b2e19c19e57d32960dac6847b994b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd1465560c85bcc6967c2cdcd6b6e1008d94b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd7a6e6b15c37d265bae9ef31a9fa7ffcd94b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd616e683508e9c8ba7e1da472c387c08394b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd902b15278c63978c56dd23b3e9f48d1b94b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd0c846a940324401da88eb647ae7cd2ee94b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cdc2caf7a3ee46e9b7a93dc2506d56ed0994b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cd7e7741a17cc1179a700e3266f35ea38d94b3e26ee717c64999d7867364b1b4a3
    ada5762ba3aad440306517031eafe2cda3998f0e30210d777f32d3d45a12044394b3e26ee717c64999d7867364b1b4a3
  94b3e26ee717c64999d7867364b1b4a3

First, you need to build nine boxes to put nine pictures. This is easy to understand.

css code



          body{
            background: #6daf39;(背景加了个颜色 主要是好看)
          }
          .xj{
          perspective:600px;(这是井深)
          }
          .kj{
          transition: 1s;(运动时间)
          transform-style:preserve-3d;(实现3d效果 当然这是非常重的)
          width:200px;
          height: 300px;
          margin:80px auto;
          position: relative;
          transform: rotateY(0deg) rotateX(0deg) translateZ(-275px);
          transform-origin: center center -275px;
          }

      .mian{
        position:absolute;
        font-size: 50px;
        color:#fff;
        text-align: center;
        line-height: 300px;
      }
      .mian:nth-child(1){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(0deg)translateZ(275px);
      }
      .mian:nth-child(2){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(40deg)translateZ(275px);
      }
      .mian:nth-child(3){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(80deg)translateZ(275px);
      }
      .mian:nth-child(4){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(120deg)translateZ(275px);
      }
      .mian:nth-child(5){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(160deg)translateZ(275px);
      }
      .mian:nth-child(6){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(200deg)translateZ(275px);
      }
      .mian:nth-child(7){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(240deg)translateZ(275px);
      }
      .mian:nth-child(8){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(280deg)translateZ(275px);
      }
      .mian:nth-child(9){
        width:200px;
        height: 300px;
        background: #ff2223;
        transform: rotateY(320deg)translateZ(275px);
      }

css is here, very simple;

js code
    kj.onclick=function () {
      cishu++;
      var jiaodu=40*cishu;


      kj.style.transform="rotateY("+jiaodu+"deg)translateZ(-275px)"
    }

(kj) is the 3D space. If clicking kj is an effect, there must be a method or step;
3d space style rotateY (this is the up and down axis rotation) translateZ (Z is the 3D three-dimensional character axis; let Move the 3d space back 275px to find the axis position)

For more css 3d basic knowledge related articles, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn