CSS clip-path
사용하면 요소의 가시 영역을 정의하는 경로를 지정하여 HTML 요소에 대한 사용자 정의 모양 및 클리핑 영역을 만들 수 있습니다. 이 경로 외부의 모든 것은 잘라 내고 숨겨져 있습니다. clip-path
속성에 값을 할당하여이를 달성합니다. 이 값은 여러 기능 중 하나 일 수 있으며, 각 기능은 클리핑 경로를 정의하는 다른 방법을 제공합니다.
가장 일반적인 기능은 다음과 같습니다.
inset()
: 요소의 가장자리에서 삽입 된 직사각형 클리핑 영역을 만듭니다. 상단, 오른쪽, 하단 및 왼쪽 오프셋을 나타내는 4 가지 값이 필요합니다. 예를 들어, clip-path: inset(10px 20px 30px 40px);
사각형 삽입물 10px, 오른쪽에서 20px, 하단에서 30px, 왼쪽에서 40px를 만듭니다.circle()
: 원형 클리핑 영역을 만듭니다. 중심과 반경을 지정하는 반경 또는 원 정의가 필요합니다. clip-path: circle(50px);
요소를 중심으로 50px 반경으로 원을 만듭니다. clip-path: circle(50px at 50px 50px);
50px, 50px 중심의 50px 반경으로 원을 만듭니다.ellipse()
: circle()
과 유사하지만 타원형 클리핑 영역을 만듭니다. 중심과 반경을 지정하는 반경 또는 타원 정의가 필요합니다. clip-path: ellipse(50px 30px);
요소를 중심으로 반경 50px 및 30px의 타원을 만듭니다. clip-path: ellipse(50px 30px at 75px 50px);
50px의 반경과 75px, 50px 중심의 30px의 타원을 만듭니다.polygon()
: 다각형 클리핑 영역을 만듭니다. 다각형의 정점을 정의하는 쉼표로 구분 된 좌표 목록이 필요합니다. 예를 들어, clip-path: polygon(0 0, 100% 0, 50% 100%, 0 100%);
삼각형을 만듭니다. 좌표는 요소의 치수와 관련이 있습니다.path()
: SVG 경로 데이터를 사용하여 복잡한 모양을 정의 할 수있는 가장 유연성을 제공합니다. 이를 위해서는 SVG 경로 구문을 이해해야하지만 거의 모든 모양을 상상할 수 있습니다. 예를 들어, clip-path: path("M0,0 H100 V100 H0 Z");
정사각형을 만듭니다. clip-path
속성은 URL을 사용하여 클리핑 경로 정의가 포함 된 외부 SVG 파일을 참조 할 수도 있습니다. 이것은 별도의 파일로 정의 된 복잡한 모양에 유용합니다.
CSS clip-path
이미지에 의존하지 않고 시각적으로 흥미롭고 매력적인 디자인을 만들 수있는 강력한 방법을 제공합니다. 일부 일반적인 사용 사례는 다음과 같습니다.
clip-path
직사각형 이미지에 적용하여 원하는 모양을 달성 할 수 있습니다.clip-path
적용하여 원하는 부분 만 드러내면서 이미지의 일부를 마스킹 할 수 있습니다.clip-path
불규칙한 모양의 섹션이나 겹치는 요소와 같은 비정상적인 레이아웃 구조를 만드는 데 사용될 수 있습니다.clip-path
사용하여 모양이 다른 화면 크기에 적응하는 반응 형 디자인을 만들 수 있습니다.overflow
및 background-image
와 같은 다른 CSS 속성과 어떻게 상호 작용합니까? clip-path
다른 CSS 속성과 흥미로운 방식으로 상호 작용합니다.
overflow
: overflow
속성은 컨테이너 오버 플로우 컨텐츠를 처리하는 방법을 결정합니다. 요소에 clip-path
적용되는 경우 overflow
설정에 관계없이 경로에 의해 클리핑 된 컨텐츠는 효과적으로 숨겨져 있습니다. 그러나 overflow
속성은 요소의 경계를 넘어 서면 잘린 영역 외부의 컨텐츠에 여전히 영향을 미칩니다.background-image
: background-image
도 clip-path
에 의해 잘립니다. 정의 된 경로 내의 배경 이미지의 일부만 볼 수 있습니다. 이를 통해 이미지의 일부만 표시되는 흥미로운 배경 효과를 만들 수 있습니다. 배경은 clip-path
의 모양을 존중합니다.border
: 국경은 clip-path
에 의해 잘리지 않습니다 . 테두리는 클리핑 모양이 아니라 요소의 원래 직사각형 경계 주위에 그려집니다. 잘린 모양을 따르는 테두리를 원한다면 배경색과 모양이 일치하는 의사 요소와 같은 다른 기술을 사용해야합니다. "shape"클래스가있는 <div> 요소를 사용하여 몇 가지 예제를 설명하겠습니다.<pre class="brush:php;toolbar:false"> <code class="html"><div class="shape"></div> <div class="shape circle"></div> <div class="shape polygon"></div> <div class="shape inset"></div></code></pre>
<pre class="brush:php;toolbar:false"> <code class="css">.shape { width: 150px; height: 150px; background-color: lightblue; margin: 20px; } .shape.circle { clip-path: circle(50% at 50% 50%); /* Circle */ } .shape.polygon { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); /* Square */ } .shape.inset { clip-path: inset(20px 10px 30px 40px); /* Inset Rectangle */ } .shape.path{ clip-path: path("M0,0 H100 V100 H0 Z"); /*Square using path()*/ }</code></pre>
<p> 이 코드는 다른 <code>clip-path
함수를 보여줍니다. .circle
클래스는 원을 생성하고, .polygon
사각형을 생성하고, .inset
가장자리에서 사각형 삽입물을 생성하고, path()
사용하여 사각형의 추가 예를 만들 수 있습니다. 값을 조정하여 모양을 필요에 맞게 사용자 정의하십시오. 다른 기능과 그 매개 변수를 탐색하여 더 복잡한 모양을 만들 수 있습니다. 형태와 위치를 미세 조정하기 위해 브라우저의 개발자 도구에서 결과를 항상 검사해야합니다.
위 내용은 CSS 클립 경로를 사용하여 사용자 정의 모양과 클리핑 영역을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!