페이지 스크롤 중 뷰포트에 표시되는 요소 애니메이션
웹 페이지에서 CSS 애니메이션을 사용할 때 모든 애니메이션이 동시에 재생되어 애니메이션이 눈에 띄지 않는 상황에 직면하는 것이 일반적입니다. 바닥. 이 문제를 해결하기 위해 IntersectionObserver API를 사용하는 솔루션을 살펴보겠습니다.
IntersectionObserver API
IntersectionObserver API를 사용하면 개발자는 요소 교차점의 변경 사항을 모니터링할 수 있습니다. 상위 컨테이너 또는 뷰포트입니다. 요소가 표시되면 작업을 시작하는 데 사용할 수 있는 이벤트를 트리거합니다.
구현 예
다음은 다음과 같은 경우 CSS 클래스 토글을 트리거하는 예입니다. 요소가 뷰포트에 표시됩니다:
<br>const inViewport = (항목, 관찰자) => {<br> items.forEach(entry => {<pre class="brush:php;toolbar:false">entry.target.classList.toggle("is-inViewport", entry.isIntersecting);
});
};
const Obs = new IntersectionObserver(inViewport);
const obsOptions = {}; //참조: https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Intersection_observer_options
// 모든 [data-inviewport] 요소에 관찰자를 연결합니다:
문서 .querySelectorAll('[data-inviewport]').forEach(el => {
Obs.observe(el, obsOptions);
});
위의 예에서는 [data-inviewport] 속성이 있는 모든 요소가 모니터링됩니다. 요소가 뷰에 있으면 is-inViewport 클래스가 추가되고 아래 CSS에 정의된 애니메이션이 실행됩니다.
<br>[data-inviewport="scale-in"] { <br> 전환: 2초;<br> 변환: scale(0.1);<br>}<br>[data-inviewport="scale-in"].is-inViewport { <br> 변환: scale(1);<br>}<p>[data -inviewport="fade-rotate"] { <br> 전환: 2초;<br> 불투명도: 0;<br>}<br>[data-inviewport="fade-rotate"].is-inViewport { <br> 변환: 회전(180deg);<br> 불투명도: 1;<br>}<br>< ;/pre></p><p>이 솔루션은 스크롤하는 동안 요소가 표시될 때만 애니메이션이 재생되도록 보장하여 사용자 경험을 향상하고 시각적으로 더욱 매력적인 웹페이지를 만듭니다.</p>
위 내용은 페이지 스크롤 중에 요소가 뷰포트에 들어갈 때 CSS 애니메이션을 트리거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Goofonts는 개발자 부인과 디자이너 남편이 서명 한 사이드 프로젝트로, 둘 다 타이포그래피의 큰 팬입니다. 우리는 Google에 태그를 지정했습니다

GraphQL API를 구축하는 방법을 배우는 것은 매우 어려울 수 있습니다. 그러나 10 분 안에 GraphQL API를 사용하는 방법을 배울 수 있습니다! 그리고 그것은 완벽하게 얻었습니다

여기 Yuanchuan의 합법적 인 CSS 속임수입니다. 이 CSS 속성 오프셋 경로가 있습니다. 옛날 옛적에, 그것은 모션 경로라고 불렸다가 이름이 바뀌 었습니다. 나


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

Dreamweaver Mac版
시각적 웹 개발 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.
