TIL #14 CSS Animation과 @keyframes 그리고 실습
animation
animation-delay
animation-delay
: 엘리먼트가 로드되고 나서 언제 애니메이션이 시작될지 지정
animation-delay: 4s;
animation-direction
animation-direction
: 애니메이션이 종료되고 다시 처음부터 시작할지 역방향으로 진행할지 지정
animation-direction: alternate;;
normal
: 지정된 방향으로 재생.
reverse
: 반대 방향으로 재생.
alternate
: 지정된 방향, 반대 방향 순으로 반복.
alternate-reverse
: 반대 방향, 지정된 방향 순으로 반복.
animation-duration
animation-duration
: 한 싸이클의 애니메이션이 얼마에 걸쳐 일어날지 지정
animation-duration: 4s;
animation-iteration-count
animation-iteration-count
:애니메이션이 몇 번 반복될지 지정합니다. infinite로 지정하여 무한히 반복할 수 있다.
초기값은 1 이다.
animation-iteration-count: infinite;
animation-name
animation-name
: @keyframes 이름을 적어 @keyframes에 작성한 효과를 적용시킨다.
animation-name: tutsFade;
animation-play-state
animation-play-state
:애니메이션을 멈추거나 다시 시작할 수 있다.
초기값은 running이다.
running
:애니메이션 실행.
paused
:애니메이션 정지.
animation-timing-function
animation-timing-function
:중간 상태들의 전환을 어떤 시간간격으로 진행할지 지정
ease
: 기본값으로 천천히 시작하여 빨라졌다가 종료에 가까워지면 다시 느려지게 변화.
ease-in
: 천천히 시작하여 종료에 가까워지면 빠르게 변화.
ease-out
: 빠르게 시작하여 종료에 가까워지면 천천히 변화.
ease-in-out
: 시작과 종료지점에서만 천천히 움직임.
linear
: 시작부터 종료까지 일정하게 움직임
step-start
:시작과 동시에 종료 상태로 됨.
step-end
: 종료 시점에 동작.
steps
: steps(정수, start 또는 end) 지정. 예를 들어 5라는 숫자를 지정하면 5단계로 나누어 움직인다.
cubic-bezier
: 움직임을 임의로 설정.
animation-fill-mode
animation-fill-mode
:애니메이션이 시작되기 전이나 끝나고 난 후 어떤 값이 적용될지 지정
초기값은 none
이다.
none
: 시작 전, 종료 후 적용 안 함.
forwards
: 종료 후 스타일이 적용.
backwards
: 시작 전 스타일이 적용.
both
: forwards와 backwards 둘다 적용.
@keyframes
@keyframes는 애니메이션의 시작부터 종료 부분까지 어떠한 동작을 할 것인지 지정할 수 있는 css 문법이다.
@keyframes 이름 {
0% {
CSS 속성: 값;
}
100% {
CSS 속성: 값;
}
}
0%~ 100% 사이의 숫자값들을 추가적으로 입력하여 중간 값들을 설정할 수 있다.
퍼센트가 아닌 from
, to
로도 지정할 수 있다.
직접 만든 에니메이션 예제
keyframes hideSplashScreen { from { opacity: 1; } to { opacity: 0; visibility: hidden; } }
#splash-screen { background-color: var(--yellow); position: absolute; height: 100vh; width: 100vw; top: 0; display: flex; justify-content: center; align-items: center; font-size: 122px; animation: hideSplashScreen 0.4s ease-in-out forwards; animation-delay: 2s; }
opacity
는 투명도를 주는 속성이다. 0~1 까지 사용하여 투명도를 나타낸다.
visibility: hidden
visibility
는 문서의 레이아웃을 변경하지 않고 요소를 보이거나 숨긴다.
페이지를 로딩할때 잠깐 화면에 애니메이션효과가 적용된 후
다시 원래 페이지로 돌아가는 애니메이션이다.
애니메이션 종료 후에도 웹페이지 제일 상단에 위치하여 다른 요소를 클릭할 수가 없었기 떄문에
visibility
를 hidden
값을 주어 숨겨 애니메이션 종료 이후에도 클릭이 가능하도록 하였다.
Author And Source
이 문제에 관하여(TIL #14 CSS Animation과 @keyframes 그리고 실습), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@zhd5379/TIL-14-CSS-Animation과-keyframes저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)