3D 표현하기

 

transform, perspective, transform-style, transfrom-origin

transform : translateZ() - Z축 이동

transform : translate3D ( , , ) - 세방향 이동

transform : rotateX(deg) -X축 기준 회전

transform : rotateY(deg) -Y축 기준 회전

transform : rotate3D( , , , ) -각 축의 앵글 정해놓고 회전

 

perspective : px - 원근감 깊이 ( 작을수록 원근감이 크다 )

transform : perspective(px)

 

transform-origin : top (회전축 설정)

transform-style : preserve-3D (3D 객체화. 자식태그는 자신의 3D 포지션을 나타낸다. )

 

 

 

 

 

 

1. 사용할 태그

 

 

 

 

 

 

 

 

2. 기본속성 넣기.

 

 

 

 

 

 

 

 

 

 

 

-3D-

 

3. transform : translate3D

 

 

 

 

 

X, Y, Z

 

 

 

- 티가 나진 않지만 앞으로(화면방향, Z방향) 100px 나와있다.  

 

 

 

4. transform : rotateX -Y

 

 

 

X축 방향으로 30도 회전. 정면에서 보면 더 짧아 보이므로 길이가 짧아진것 처럼 보인다.

 

 

 

 

 

5. transform : rotate3D( , , , )

 

 

소수들은 길이가 아닌 앵글.

 

 

 

 

 

 

 

글자를 보면 기울어져 있는 것을 확인할 수 있다.

 

 

 

↓ 한번에 나타낼 수 있음.

 

matrix로도 한번에 나타낼 수 있다.

 

 

 

 

 

 

 

 

 

 

 

 

6. perspective (원근감 ) : px;

 

원근감을 나타내 준다. 3D 변형을 준 속성보다 앞에 나와야 한다.

 

 

 

 

 

 

 

* perspecive가 부모에게 붙느냐, 자식에게 붙느냐의 차이 *

 

 

↓ HTML 태그와 기본 속성.

 

 

 

 

 

 

 

- transform : rotateX(40deg) -> 원근감의 효과를 주지 않으면 단순히 짧아진것 같다.

 

 

 

 

1) 자식태그에게 perspective를 주었을때

 

* transform의 항목으로 들어갈 수 있다 .

perspective(..px)

 

각자 원근감이 표현된다.

 

 

 

 

 

 

 

 

2) 부모태그에게 perspective를 주었을 때

 

 

 

 

부모태그 전체 영역을 기준으로 원근감이 생긴다 .

 

 

 

 

 

 

 

 

 

* 3D표현 실습 및 추가적인 속성 *

(animation, transition 사용)

transform-origin, transform-style : preserve-3d

 

 

 

1. 기본HTML 태그

 

 

 

 

 

2. 기본 CSS 속성.

 

* vertical-align: top : 이미지는 태그 안에서 아래쪽에 공간을 남겨놓는 경우가 있다. 그것을 막기 위해 쓰인다

 

 

 

 

 

 

3. transform : rotateY(50deg)

이미지 말고 poster 태그에

 

 

 

 

원근감이 없어 그냥 좁아진것 처럼 보인다.

 

 

 

4. 원근감을 주기 위해 perspective : 500px를 body에 주기

 

 

 

 

 

 

 

 

4. 무한하게 돌아가는 애니메이션 주기

 

 

 

 

 

 

 

 

 

 

 

5. 돌아가다가 마우스 올리면 이미지 X축으로 회전하게 하기

 

* transition 은 해당 태그가 변화되는 과정을 보여주는 속성이다

* transform -origin : 회전축을 바꿔준다.

 

 

 

원근감만 들어갔기 때문에 실제로 입체는 되지 않는다.

 

 

 

6. 태그 3D 객체화 하기.

부모태그와 위치를 비교했을 때 3D 위치를 갖게 한다.

 

 

 

 

 

 

 

 

'프론트엔드 > HTML & CSS' 카테고리의 다른 글

<CSS3> 3D실습 2. cube  (0) 2017.07.07
<CSS3> 3D예제 1 . Flip  (0) 2017.07.07
<CSS3> transform  (0) 2017.07.03
<CSS3> animation  (0) 2017.07.03
<HTML5 & CSS3> checked  (0) 2017.06.27

+ Recent posts