[css] z-index 초기값 auto 사용 주의 > 퍼블리셔팁

퍼블리셔팁

퍼블리싱과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.

[css] z-index 초기값 auto 사용 주의 정보

HTML [css] z-index 초기값 auto 사용 주의

본문

z-index의 초기값 auto는 0이 아닙니다. 다만 구형 IE 브라우저는 0인것처럼 작동되는 버그가 있으나, 마치 이러한 동작이 정상인줄 알고 계시는 분이 더러 있습니다. 지정하지 않은 z-index는 0이 아니라 auto입니다.

auto인 경우 자식내에 어떠한 다른 요소가 z-index 값이 있다면 부모를 무시하고 자신이 다른 z-index 값을 가진 것과 동일 선상에서 비교합니다. 만일 이때 부모가 0이라면 부모는 다른 부모와 비교하여 우선이 결정되지 자식이 관여하지 않습니다. 그러나 auto인 경우 자식은 부모를 생각하지 않고 자신의 z-index 값으로 다른 요소의 z-index와 비교하려 합니다. 

이러한 동작을 잘 이해하지 않는다면 보통 auto가 아닌 0으로 놓으면 만족스러운 결과가 될지 모르겠지만, 해당 요소내의 자식이 다른 것들에 대한 z-index로 우선 위치를 결정하지 못한다는 제약을 받게 됩니다.

해당 내용은 css2에서 css2.1로 바뀌며 변경된 내용을  담고 있기에 차이가 있습니다. 또한 음의 값인 경우, body의 배경과 content 사이에 위치할 수 있도록 바뀌었으나, 그 이전에는 body에 가려 뒤로 가게 되는 구형 브라우저 처리도 있습니다. 비슷하게 컨텐츠와 배경사이에 껴들아갈 수 있는 경우가 float에서 음의 마진 사용시 발생하는데, 이또한 CSS2.1에서 변경된 부분으로 구형 IE 브라우저는 이러한 결과를 보이지 않습니다.  

마지막으로 z-index의 중첩시 transparent에 대한 IE 처리는 독특합니다. 투명한 경우 뒤에 있는 내용을 의미상 가렸지만 선택이 가능해집니다. 

추천
0
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로