익명의 개발노트

[CSS] Animation 본문

프로그래밍/html, css

[CSS] Animation

캡틴.JS 2019. 6. 5. 21:48
반응형

CSS에 애니메이션 사용하기 위해서는 animation 속성을 이용해야한다.

 

animation 속성의 하위 속성이 있는데, 아래와 같다.

 

animation-delay : element가 load 되고 나서 언제 애니메이션이 시작될지 지정합니다.

animation-direction : 애니메이션이 종료되고 다시 처음부터 시작할지 역방향으로 진행할지 지정합니다.

animation-duration : 한 싸이클의 애니메이션이 얼마에 걸쳐 일어날지 지정합니다.

animation-iteration-count : 애니메이션이 몇 번 반복될지 지정합니다. infinite로 지정하여 무한히 반복할 수 있습니다.

animation-name : 이 애니메이션의 중간 상태를 지정합니다. 중간 상태는  @keyframes 규칙을 이용하여 기술합니다.

animation-play-state : 애니메이션을 멈추거나 다시 시작할 수 있습니다.

animation-timing-function : 중간 상태들의 전환어떤 시간 간격으로 진행할지 지정합니다.

animation-fill-mode : 애니메이션이 시작되기 전이나 끝나고 난 후 어떤 값이 적용될지 지정합니다.

 

가장 중요한 것은 애니메이션이 이루어지기 위해서는 처음-중간-끝의 이미지를 지정해야 자연스럽게 움직임을 보여줄 수 있는데, keyframes이 가장 중요하다. 

 

p {
  animation-duration: 3s;
  animation-name: slidein;   // 1 -- 애니메이션 이름
}

//case1.
@keyframes slidein {  // 2 -- @keyframes 애니메이션 이름 
  from {     // 3 -- 0%로 써도됨 
    margin-left: 100%;
    width: 300%
  }

  to {  // 4 -- 100%
    margin-left: 0%;
    width: 100%;
  }
}

//case2. 
@keyframes slidein {  
  0% {     
    margin-left: 100%;
    width: 300%
  }

  75% {   //중간 상태 추가할 수 있음
    font-size: 300%;
    margin-left: 25%;
    width: 150%;
  }

  100% {  
    margin-left: 0%;
    width: 100%;
  }
}
반응형

'프로그래밍 > html, css' 카테고리의 다른 글

[CSS] 웹폰트 적용방법  (0) 2019.06.05
[CSS] selector 표현하기  (0) 2019.06.03
[CSS] block, inline 요소  (0) 2019.06.03
[CSS] font-family, indent, box-sizing  (0) 2019.06.03
[CSS] z-index  (0) 2019.03.02
Comments