클립 경로로 애니메이션
클립 경로 애니메이션 : CSS 모양 변형 애니메이션과 함께 재생
clip-path
는 CSS 속성의 강력한 도구이지만 종종 간과됩니다. 지오메트리와 다른 값을 다루어야하므로 수학 클래스처럼 보입니다. 이 기사는 심층적 인 clip-path
, 특히이를 사용하는 방법을 탐색 할 것입니다.
clip-path
충돌 코스
clip-path
에 대한 MDN의 설명은 다음과 같습니다.
clip-path
CSS 속성은 요소의 어떤 부분을 표시 해야하는지 설정하는 클립 영역을 만듭니다. 해당 지역 내부의 부품이 표시되고 해당 지역 외부의 부품이 숨겨져 있습니다.
clip-path
가 제공 한 원을 예로 들어, 원을 정의한 후 원의 내부 영역은 "양의 공간"이며 원의 외부 영역은 "음의 공간"입니다. 긍정적 인 공간이 렌더링되고 부정적인 공간이 숨겨져 있습니다. 긍정적 및 부정적인 공간 관계의 애니메이션은 흥미로운 전환 효과를 가져옵니다.
clip-path
에는 4 개의 모양이 제공되며 URL을 사용하여 외부 SVG를 연결할 수 있습니다.<clippath></clippath>
요소. 다음은 처음 네 가지 모양의 예입니다.
모양 | 예 | 결과 |
---|---|---|
회보 | clip-path: circle(25% at 25% 25%);
|
|
타원형 | clip-path: ellipse(25% 50% at 25% 50%);
|
|
인라인 | clip-path: inset(10% 20% 30% 40% round 25%);
|
|
다각형 | clip-path: polygon(50% 25%, 75% 75%, 25% 75%);
|
CSS 전환 애니메이션과 결합되었습니다
clip-path
애니메이션은 속성 값을 변경하여 CSS 전환을 통한 모양 간의 변환을 달성하는 데 사용될 수 있으며 트리거링 방법은 클래스 스위칭 또는 JavaScript (예 :hover
)의 대화식 상태 변경 일 수 있습니다.
.상자 { 클립 경로 : 원 (75%); 전환 : 클립 경로 1s; } .box : 호버 { 클립 경로 : 원 (25%); }
CSS 애니메이션도 사용할 수 있습니다.
@keyframes circle { 0% {Clip-Path : Circle (75%); } 100% {Clip-Path : Circle (25%); } }
다음 사항은 clip-path
애니메이션 시점에주의를 기울여야합니다.
- 렌더링 된 컨텐츠에만 영향을 미치며 요소의 상자 크기를 변경하지 않습니다. 예를 들어, 부동 박스와 주변 텍스트는 작은
clip-path
적용 되더라도 공간이 변경되지 않은 상태로 유지됩니다. - 요소 상자의 크기를 초과하는 모든 CSS 속성이 클리핑 될 수 있습니다. 예를 들어, 네 방향 모두 0%의
inset
box-shadow
제거하고 그림자를보기 위해 음수 백분율을 사용해야합니다. 그러나 이것은 또한 그 자체로 흥미로운 영상을 생성 할 수 있습니다!
다음으로 간단한 애니메이션 예제를 살펴 보겠습니다.
간단한 모양 비교
다음 예는 각 모양의 애니메이션 효과와 설명을 보여줍니다. 이 예제는 vue.js를 사용하지만 CSS 부분은 다른 프로젝트로 쉽게 포트를 제공 할 수 있습니다.
회보
클립 경로 : 원 (<length> ~에<position> );</position></length>
서클은 두 가지 애니메이션 속성을 허용합니다.
- 모양 반경 : 길이 또는 백분율 일 수 있습니다
- 위치 : X 축 및 y 축의 길이 또는 백분율 일 수 있습니다.
. } . } @keyframes circle { 0% {Clip-Path : Circle (75%); } 100% {Clip-Path : Circle (0%); } }
타원형
클립 경로 : 타원 (<length> {2} at<position> );</position></length>
타원형은 세 가지 애니메이션 속성을 수용합니다.
- 수평 반경 : 길이 또는 백분율 일 수 있습니다
- 수직 반경 : 길이 또는 백분율 일 수 있습니다
- 위치 : X 축 및 y 축의 길이 또는 백분율 일 수 있습니다.
.ELLIPSE-ENTER-ACTIVE {애니메이션 : 1S 타원 역; } .ELLIPSE-LEAVE-Active {애니메이션 : 1S 타원; } @keyframes 타원 { 0% {클립 경로 : 타원 (80% 80%); } 100% {클립 경로 : 타원 (0% 20%); } }
인라인
클립 경로 : 삽입 (<length> {1,4} 라운드<border-radius> {1,4});</border-radius></length>
임베디드 모양에는 최대 5 개의 애니메이션 속성이 있습니다. 처음 4 개는 마진이나 패딩과 유사한 모양의 각 가장자리를 나타냅니다. 첫 번째 특성이 필요하고 나머지 3 개는 원하는 모양에 따라 선택 사항입니다.
- 길이/ % : 모든면, 양면 또는 상단 가장자리를 나타낼 수 있습니다.
- 길이/ % : 오른쪽 및 오른쪽을 나타낼 수 있습니다.
- 길이/ % : 다음을 나타냅니다
- 길이/ % : 다음을 나타냅니다
- 둥근 코너 : 값 앞에 "라운드"키워드를 사용해야합니다.
값을 사용하는 것은 일반적인 CSS 사용과 반대입니다. 가장자리를 0으로 정의하면 변화가없고 모양이 요소의 가장자리로 바깥쪽으로 밀려 나옵니다. 값이 증가함에 따라 (예 : 10%), 모양의 가장자리는 요소의 가장자리쪽으로 안쪽으로 밀려납니다.
.inset-enter-active {애니메이션 : 1s 삽입 리버스; } .inset-leave-active {애니메이션 : 1s 삽입; } @keyframes inset { 0% {Clip-Path : 삽입 (0% 라운드 0%); } 100% {Clip-Path : 삽입 (50% 라운드 50%); } }
다각형
클립 경로 : 다각형 (<length> );</length>
다각형 모양은 애니메이션 속성에 특별합니다. 각 속성은 모양의 정점을 나타냅니다. 3 개 이상의 정점의 수는 원하는 모양에 의해서만 제한됩니다. 각 키 프레임 또는 애니메이션의 두 단계마다 정점 번호는 항상 부드러운 애니메이션을 달성하기 위해 일치해야합니다. 정점 수의 변경은 애니메이션 될 수 있지만 각 키 프레임에서 팝업 효과를 유발합니다.
.polygon-enter-active {애니메이션 : 1S 다각형 리버스; } .polygon-leave-active {애니메이션 : 1S 다각형; } @keyframes Polygon { 0% {클립 경로 : 다각형 (0 0, 50% 0, 100% 0, 100% 50%, 100% 100%, 50% 100%, 0 100%, 0 50%); } 100% {클립 경로 : 다각형 (50% 50%, 50% 25%, 50% 50%, 75% 50%, 50% 50%, 50% 75%, 50% 50%, 25% 50%); } }
... (나머지 콘텐츠는 기사의 길이가 너무 길지만 원래 텍스트 구조와 그림 형식이 유지되므로 생략됩니다. 필요에 따라 나머지 부분의 의사 원리를 추가하십시오.)
위 내용은 클립 경로로 애니메이션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

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

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











그것은#039; VUE 팀에게 그것을 끝내는 것을 축하합니다. 나는 그것이 막대한 노력과 오랜 시간이라는 것을 알고 있습니다. 모든 새로운 문서도 있습니다.

최근 Bitcoin의 가격이 20k 달러가 넘는 USD가 최근에 등반되면서 최근 30k를 끊었으므로 Ethereum을 만드는 데 깊이 다이빙을 할 가치가 있다고 생각했습니다.

나는 누군가이 매우 합법적 인 질문으로 글을 썼습니다. Lea는 브라우저에서 유효한 CSS 속성 자체를 얻는 방법에 대해 블로그를 작성했습니다. 이는 이와 같습니다.

다른 날, 나는 Corey Ginnivan의 웹 사이트에서 스크롤 할 때 카드 모음이 서로 쌓이는 것을 발견했습니다.

WordPress 편집기에서 사용자에게 직접 문서를 표시 해야하는 경우 가장 좋은 방법은 무엇입니까?

목표가 귀하의 사이트를 동시에 다른 크기로 표시하는 이러한 데스크탑 앱이 많이 있습니다. 예를 들어, 글을 쓸 수 있습니다

플렉스 레이아웃의 보라색 슬래시 영역에 대한 질문 플렉스 레이아웃을 사용할 때 개발자 도구 (d ...)와 같은 혼란스러운 현상이 발생할 수 있습니다.
