CSS의 직사각형 모양에서 원 잘라내기
이 효과를 만드는 한 가지 접근 방식은 요소와 영리한 요소의 조합을 사용하는 것입니다. 경계 반경을 사용합니다. 그러나 이 기술은 불규칙한 마크업과 특정 브라우저에서 보기 흉한 간격 등의 잠재적인 단점이 있습니다.
대체 접근 방식
다행히도 다음을 사용하는 대체 방법이 있습니다. 의사 요소와 함께 단일 요소. 이 접근 방식은 상위 요소에 대해 방사형 그라데이션 배경의 기능을 활용하는 반면 의사 요소는 투명한 원 컷아웃 역할을 합니다.
다음 코드 조각을 고려하세요.
div:before { /* creates the red circle */ position: absolute; content: ''; width: 90px; height: 90px; top: -75px; left: calc(50% - 45px); background-color: red; border-radius: 50%; } div { position: relative; margin: 100px auto 0 auto; width: 90%; height: 150px; border-radius: 6px; /* only the below creates the transparent gap and the fill */ background: radial-gradient(50px 50px at 50% -30px, rgba(0, 0, 0, 0) 49.5px, rgba(0, 0, 0, .8) 50.5px); }
설명
이 기술은 다음과 같은 여러 가지 장점을 제공합니다.
이 대체 접근 방식을 구현하면 CSS의 직사각형 모양에서 원을 효과적으로 잘라낼 수 있습니다. 이전 방법의 복잡성과 함정 없이 원하는 시각적 결과를 얻을 수 있습니다.
위 내용은 CSS만 사용하여 직사각형에서 원을 자르는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!