0527 개발일지
학습한 내용
CSS 애니메이션 실습
- transform: 오브젝트의 회전, 이동, 크기 등의 변형을 주는 속성.
rotate: 2차원적인 회전 효과. 양수는 오른쪽으로, 음수는 왼쪽으로 회전.
scale: 오브젝트의 크기를 작성한 비율로 키움. 차례로 x축, y축 배율.
skew: 3차원적인 회전 효과. 차례로 x축 회전, y축 회전 각도.
translate: 오브젝트의 위치를 이동. 차례로 x축, y축 이동 순서. 레이아웃 배치작업에 사용하기도 한다.
※ 하위 버전 브라우저와의 호환성을 위해서는 아래와 같은 형태로 속성 앞에 프리픽스(prefix)를 작성해줘야한다.-webkit-transform: rotate(10deg); /* 크롬, 사파리 */ -moz-transform: rotate(10deg); /* 파이어폭스 */ -ms-transform: rotate(10deg); /* 익스플로러 */ -o-transform: rotate(10deg); /* 오페라 */ transform: rotate(10deg);
-
transition: 자연스러운 애니메이션 효과를 주기 위한 속성. 변화하는 과정을 조절할 수 있다.
property: 변화를 주고자하는 영역, 속성을 지정함.
duration: 애니메이션이 진행되는 시간. 1000ms = 1s
timing-fuction: 애니메이션이 진행되는 속도의 성격. linear는 일정한 속도를 유지하는 속성값.
delay: 애니메이션이 시작되기까지 지연되는 시간.
※ 각 속성은 transition 속성 안에 속성값을 한번에 작성해줘도 된다. 작성하는 순서는 상관없지만 숫자는 무조건 먼저 나온 게 duration, 다음에 나온 게 delay로 정해진다. 숫자값을 하나만 입력했을 경우 duration으로 인식한다. -
animation: 지정하는 액션 없이 애니메이션을 적용하고 싶을 때 사용하는 속성. @keyframes를 연동해서 애니메이션이 발동하는 형태를 입력해줄 수 있다.
name: 애니메이션의 이름을 지정하는 속성. 키프레임과 연동할 때 사용한다.
duration: 애니메이션이 진행되는 시간.
delay: 애니메이션이 시작되기까지 지연되는 시간.
interaction-count: 애니메이션의 진행 횟수. infinite를 작성하면 무한으로 움직인다.
direction: 애니메이션의 진행 방향. alternate는 왕복 효과를 주며, 왕복하는 것이 2회로 적용되기 때문에 interaction-count의 횟수를 지정할 때는 신경써야한다.
※ transition과 마찬가지로 animation 안에 한번에 속성값을 입력하는 게 가능하다..animation { width: 300px; height: 300px; background-color: yellow; animation: changewidth 3s linear 1s infinite alternate; } @keyframes changewidth { 0% { width: 300px; height: 300px; background-color: yellow; } 50% { background-color: blue; } 0% { width: 600px; height: 600px; background-color: red; border: solid 10px blue; } }
위와 같은 형태로 작성해줄 수 있다.
from - to와 같은 형태로 시작과 끝만 지정해줄 수도 있고, %값을 지정해서 세세한 변화과정을 설정해줄 수도 있다.
※ transition과 마찬가지로 하위 버전 브라우저와 호환하기 위해서는 프리픽스를 넣어줘야한다. @와 keyframes 사이에 적어주면 된다.
CSS 애니메이션을 만들 때 도움이 되는 사이트 > stylie http://jeremyckahn.github.io/stylie/
선에 따라 움직이는 오브젝트를 만들 때 유용.
학습한 내용 중 어려웠던 점 또는 해결못한 것들
애니메이션을 만드는 여러가지 방법을 한번에 배워서 조금 헷갈린다. 레이아웃을 배울 때와 마찬가지로 어떤 상황에서 어떤 애니메이션 속성을 사용하는 게 좋은지, 어떻게 해야 원하는 형태의 애니메이션을 만들 수 있을지 파악하기가 어렵다.
해결방법 작성
이전과 같이 강의 영상을 자주 복습하고, 무엇보다 실제로 애니메이션 효과들을 따라서 만들어보면서 감각을 익혀야할 것 같아.
학습 소감
움직이는 효과를 배우니까 확실히 더 재미있다. 간단한 움직임이 대부분이지만, 그걸 활용해서 만들 수 있는 애니메이션들이 다양한 것 같아서 더 흥미롭다. 원래 css를 이용해 애니메이션 효과를 만드는 동영상을 무작정 보곤 했었는데, 앞으로 그런 영상을 볼 때 이 사람이 왜 이런 속성을 썼는지 조금이나마 더 이해할 수 있게 될 것 같다.
배우는 내용들이 머리에 쌓여가는 것 같기는 한데, 정리가 잘 안 되는 것 같아서 배운 내용들을 한꺼번에 정리해둘 수 있는 방법을 고민하게된다.
Author And Source
이 문제에 관하여(0527 개발일지), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gahyunkim12/0527-개발일지저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)