클립 경로 애니메이션 : 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

TheBestMethodforincludingcssdependsonProjectSizeanDocplexity : 1) ForlargerProjects, useexternalcssforbettermainabilitableandableabilitable.2) ForsMallerProjects, 내부 CSSSSISSUITSIUT ABOIDEXTRAHTTPREQUESTS.ALWAYSIDERMANGERMANDIFIDANIDITION

@keyframesandcsstransitionsdifferincomplexity :@keyframesallowsfordeTailEdanimationsections, whilecsStransitsimplestateChanges.UsecsStransitionSforHovereffects likeToncolorChanges 및@keyframesforintricateanimationspinners.

알고 있습니다. 컨텐츠 관리 시스템 옵션이 수많은 톤을 사용할 수 있으며, 여러 번 테스트했지만 실제로는 아무도 없었습니다. y ' 이상한 가격 책정 모델, 어려운 커스터마이즈, 일부는 전체가되었습니다.

HTML의 일부에서 요소를 사용하여 CSS 파일을 HTML에 연결하면 달성 할 수 있습니다. 1) 태그를 사용하여 로컬 CSS 파일을 연결하십시오. 2) 여러 개의 태그를 추가하여 여러 CSS 파일을 구현할 수 있습니다. 3) 외부 CSS 파일은 다음과 같은 절대 URL 링크를 사용합니다. 4) 파일 경로 및 CSS 파일로드 순서의 올바른 사용을 확인하고 성능을 최적화하면 CSS Preprocessor를 사용하여 파일을 병합 할 수 있습니다.

Flexbox 또는 그리드 선택은 레이아웃 요구 사항에 따라 다릅니다. 1) Flexbox는 탐색 표시 줄과 같은 1 차원 레이아웃에 적합합니다. 2) 그리드는 매거진 레이아웃과 같은 2 차원 레이아웃에 적합합니다. 두 사람은 프로젝트에 사용하여 레이아웃 효과를 향상시킬 수 있습니다.

CSS 파일을 포함시키는 가장 좋은 방법은 태그를 사용하여 HTML 부분에 외부 CSS 파일을 소개하는 것입니다. 1. 태그를 사용하여 외부 CSS 파일을 소개합니다. 2. 작은 조정의 경우 인라인 CSS를 사용할 수 있지만주의해서 사용해야합니다. 3. 대규모 프로젝트는 SASS와 같은 CSS 전 처리기를 사용하여 @Import를 통해 다른 CSS 파일을 가져올 수 있습니다. 4. 성능의 경우 CSS 파일을 병합하고 CDN을 사용해야하고 CSSNANO와 같은 도구를 사용하여 압축해야합니다.

예, YoushouldLearnbothflexBoxAndgrid.1) FlexBoxisIdealforone-Dimensional, FlexiblelayoutSlikenavigationMenus.2) GridexCelsIntwo-Dimensional, ComplexDesignsSuchasmagazinElayouts.3) 결합 된 BothenSlayoutFlexibility 및 HeartingFortructur


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

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

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는