>웹 프론트엔드 >CSS 튜토리얼 >내 Z-색인이 :before 및 :after 의사 요소에서 작동하지 않는 이유는 무엇입니까?

내 Z-색인이 :before 및 :after 의사 요소에서 작동하지 않는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-31 20:02:01552검색

Why is my z-index not working on my :before and :after pseudo-elements?

위치는 있지만 Z 인덱스가 작동하지 않습니다

CSS에서 Z-index를 사용할 때 작동하지 않는 것 같은 경우 작업 중 첫 번째 단계는 모든 요소에 올바른 위치가 적용되었는지 다시 확인하는 것입니다.

이 경우 문제는 :before 및 :after 의사 요소에 적용되는 변환 속성에 있습니다. #mainplanet 요소 중 하나입니다. 이러한 요소에 대해 Z-색인이 예상대로 작동하도록 하려면 변환 속성을 제거해야 합니다.

수정된 CSS 코드는 다음과 같습니다.


--size:200px;
}

배경 {

너비:100%;
높이:100%;
위치:절대;
상단:0 ;
왼쪽:0;
배경: 선형-그라디언트(-23.5deg, #000033, #00001a);
z-index:-2;
}

배경 # mainplanet {

너비:var(--size);
높이:var(--size);
배경:#fff;
위치:상대;
상단:50 %;
왼쪽:50%;
변환:번역(-50%,-50%);
border-radius:50%;
}

배경 #mainplanet: 이전,#배경 #mainplanet:이후{

내용:"";
너비:calc(var(--size) * 1.5);
높이:calc(var(--size) / 2);
테두리:30px 솔리드 #000;
위치:절대;
위쪽:10px;
왼쪽:-80px;
테두리 반경:50%;
/ 변환 속성 제거 /
}

background #mainplanet:before{

border-top-color:transparent;
}

배경 #mainplanet:after{

z-index:-3;
}




이러한 변경 사항으로 Z -index 속성은 이제 :before 및 :after 의사 요소의 위치 지정에 영향을 미치므로 외부 링이 메인플래닛 원 뒤에 나타날 수 있습니다.

위 내용은 내 Z-색인이 :before 및 :after 의사 요소에서 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:겹치는 부분을 만들지 않고 인라인 요소에 패딩을 추가하려면 어떻게 해야 합니까?다음 기사:겹치는 부분을 만들지 않고 인라인 요소에 패딩을 추가하려면 어떻게 해야 합니까?

관련 기사

더보기