>  기사  >  웹 프론트엔드  >  인라인 SVG 클립 경로를 반응형으로 만드는 방법은 무엇입니까?

인라인 SVG 클립 경로를 반응형으로 만드는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-02 17:41:291033검색

How to Make Inline SVG Clip-Paths Responsive?

인라인 SVG를 사용한 반응형 클립 경로

문제:

클립 경로 정의 인라인 SVG를 사용하면 원하는 곡률이 상위 요소에 적용되지 않습니다.

분석:

제공된 코드에서 ClipPath 참조는 배경. 그러나 클립 경로가 의도한 대로 표시되지 않습니다.

이유:

url(#myClip)에서 참조하는 클립 경로는 절대 크기로 정의됩니다. 인라인 SVG. 상위 요소에 적용하면 클립 경로 크기가 요소 크기에 맞게 조정되지 않아 곡률이 표시되지 않습니다.

해결책:

상위 요소에 따라 크기가 조정되는 반응형 클립 경로를 생성하려면, ClipPathUnits 속성이 ClipPath 정의에서 "objectBoundingBox"로 설정되어야 합니다. 이렇게 하면 클립 경로 크기가 상위 요소의 경계 상자를 기준으로 하여 반응하게 됩니다.

업데이트된 코드:

<code class="html"><header id="block-header">
    <svg width="0" height="0">
        <defs>
          <clipPath id="myClip" clipPathUnits="objectBoundingBox">
            <path d="M0,0 1,0 1,0.9 C 1,0.9, 0.77,1, 0.5,1 0.23,1, 0,0.9,0,0.9z"/>
          </clipPath>
        </defs>
    </svg>
</header></code>

설정에 따라 ClipPathUnits를 "objectBoundingBox"로 설정하면 클립 경로가 상위 요소의 크기에 맞게 자동으로 크기가 조정되어 곡률이 표시되고 요소 크기 변경에 응답합니다.

위 내용은 인라인 SVG 클립 경로를 반응형으로 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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