>  기사  >  웹 프론트엔드  >  CSS3 @keyframes를 사용한 슬라이드업 애니메이션이 작동하지 않는 이유는 무엇입니까?

CSS3 @keyframes를 사용한 슬라이드업 애니메이션이 작동하지 않는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-28 20:47:31523검색

Why is my slide-up animation using CSS3 @keyframes not working?

CSS3 전환 - 페이드 아웃 효과

CSS3를 사용하면 페이드 아웃 효과를 쉽게 구현하여 사용자 경험을 향상시킬 수 있습니다. 그러나 슬라이드 애니메이션이 작동하지 않는 문제가 발생하면 그 이유를 살펴보겠습니다.

문제 이해

슬라이드업 애니메이션을 만들려고 합니다. @keyframes를 사용합니다. 그러나 애니메이션이 발생하지 않습니다. 이를 디버깅하기 위해 제공하신 코드를 자세히 살펴보겠습니다.

<code class="css">.dummy-wrap {
  animation: slideup 2s;
}</code>

이 코드는 .dummy-wrap 클래스가 2초 동안 슬라이드업 애니메이션을 수행해야 함을 나타냅니다. @keyframes 블록은 애니메이션의 움직임을 정의합니다.

<code class="css">@keyframes slideup {
  0% {top: 0px;}
  75% {top: 0px;}
  100% {top: -20px;}
}</code>

슬라이드 애니메이션 문제 해결

키프레임을 검사하면 요소의 위치가 지난 25일 동안만 변경되는 것을 알 수 있습니다. 애니메이션의 %. 요소가 맨 위에서 시작하므로: 0px; 상단: -20px;에서 끝나며, 기본적으로 즉시 상단: -20px;로 이동하여 갑작스러운 "슬라이드업" 효과가 발생합니다.

페이드아웃에 대한 대체 솔루션

번역을 사용하는 대신 불투명도를 사용하여 페이드 아웃 효과를 얻을 수 있습니다. 구현 방법은 다음과 같습니다.

<code class="css">.hidden {
  opacity: 0;
  transition: opacity 2s;
}</code>

이 기술은 요소의 불투명도를 점진적으로 줄여 2초에 걸쳐 눈에 띄는 페이드 아웃 효과를 만듭니다.

추가 세부정보

초기 코드 버전에서 요소의 위치가 애니메이션의 마지막 25%에서만 수정되었기 때문에 갑작스러운 "슬라이드업" 효과가 발생했습니다. 불투명도로 전환하고 전체 기간 동안 전환함으로써 부드러운 페이드 아웃 효과를 얻을 수 있습니다.

위 내용은 CSS3 @keyframes를 사용한 슬라이드업 애니메이션이 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.