• 회원가입
  • 로그인
  • 구글아이디로 로그인

[position] CSS - z-index 속성 ★ - 요소층수지정 (= 요소상하지정 = 요소상하결정 = 위아래지정 = z-index속성 = 지인덱스속성/제트인덱스속성, 상속 X)

목차
  1. z-index 정의
  2. z-index 구문
  3. z-index 예제1 - 요소가 1개일 땐 무의미
  4. z-index 예제2 - 4번째가 가장 위에 위치
  5. z-index 예제3 - 3번째가 가장 위에 위치
  6. z-index 예제4 - 부모자식 계층적 요소간엔 작동 X

 

z-index 정의 

 
요소끼리 겹칠 때 상하 지정. (= 요소간 상대적 층간 위치 지정.)
즉,
몇 개의 요소가 position 속성에 의해 위치 겹칠 때,
z-index 숫자가 더 높은 요소가 더 앞쪽에 노출 됨.

 


 
1. position 속성과 함께 사용. ★★★★★
즉, 아래 경우에 적용됨. (주의: position:static 경우엔 작동 X)
  • position: absolute; 
  • position: relative;
  • position: fixed; 
  • position: sticky;
  • flex items (= display:flex 요소의 직접 자식요소들)
단, 한 요소 안 계층적 요소간엔 작동 X. (예제4) 
 
2.
  • z-index 값 없이 2개의 position 된 요소가 서로 겹칠 시, HTML 코드 순서 마지막에 위치한 요소가 더 앞에 배치됨.
  • AOS 라이브러리 사용 시 충돌 발생할 수도 있음. (예) data-aos="fade-up" 속성 제거 시 해결됨. - 카산 님 (240520) https://sir.kr/qa/534958

3. 
  • 기본값: auto
  • 상속여부: X
  • 애니효과: O
  • CSS버전: CSS2
  • JS구문 : object.style.zIndex="-1"
 
4.
모든 브라우저 지원.
 
5. MDN z-index 예제보기
 
 

z-index 구문

 
selector {z-index: auto|number|initial|inherit;}
 

[속성값]
 
auto
문서 흐름에 따른 기본 위치에 위치 (기본값)
 
number
숫자 클수록 겹쳤을 때 위에 위치. 
  • 음수 가능. 이 경우 다른 요소들보다 밑면에 위치.
 
initial
이 속성의 기본값으로 설정.
 
inherit
부모요소 속성값 상속.

 

z-index 예제1 - 요소가 1개일 땐 무의미

 
<style>
#layer1 {
     background-color:red;
     width:200px; height:200px;
     position:absolute;
     top:106px;
     left:209px;
     z-index:1;
}
</style>
 
<div id="layer1">홈짱닷컴 (homzzang.com)</div>
 
 

z-index 예제2 - 4번째가 가장 위에 위치

 
 
<style>
div {
  width:200px; 
  height:200px; 
  position:absolute;   
}
#layer1 {
  background-color:red; 
  left:209px; 
  top:106px; 
  z-index:1;
}
#layer2 {
  background-color:blue; 
  left:265px; 
  top:142px; 
  z-index:2;
}
#layer3 {
  background-color:magenta; 
  left:322px; 
  top:197px; 
  z-index:3;
}
#layer4 {
  background-color:yellow; 
  left:379px; 
  top:247px; 
  z-index:4;
}
</style>
 
<div id="layer1"></div>
<div id="layer2"></div>
<div id="layer3"></div>
<div id="layer4"></div>
 

z-index 예제3 - 3번째가 가장 위에 위치

 
 
<style>
div {
  width:200px; 
  height:200px; 
  position:absolute;   
}
#layer1 {
  background-color:red; 
  left:209px; 
  top:106px; 
  z-index:1;
}
#layer2 {
  background-color:blue; 
  left:265px; 
  top:142px; 
  z-index:2;
}
#layer3 {
  background-color:magenta; 
  left:322px; 
  top:197px; 
  z-index:4;
}
#layer4 {
  background-color:yellow; 
  left:379px; 
  top:247px; 
  z-index:3;
}
</style>
 
<div id="layer1"></div>
<div id="layer2"></div>
<div id="layer3"></div>
<div id="layer4"></div>
 

 

z-index 예제4 - 부모자식 계층적 요소간엔 작동 X


<style>

div {width:100px; height:100px; position:absolute;}

.hz {background:white; top:100px; left:100px; }

.a {background:red; top:0px; left:0px; z-index:3}

.b {background:blue; top:30px; left:30px; z-index:2}

.c {background:green; top:30px; left:30px; z-index:1}

</style>

<div class="hz">
    <div class="a">a
         <div class="b">b
              <div class="c">c</div>
         </div>
    </div
</div>

결과 보기

※ 주의: a요소의 z-index 값이 가장 크지만, 자식요소가 부모요소 위에 배치 됨.



분류 제목
image CSS - Image Modal - (Advanced) - (이미지 모달 띄우기 효과)
button CSS - Button - 버튼스타일 (버튼크기, 버튼색깔, 버튼비활성화, 버튼그룹, 이미지위버튼)
pagination CSS - 페이징 - 기본 스타일 (Simple Pagination)
pagination CSS - 페이징 - 마우스오버 시 색깔 변경 (Active and Hoverable Pagination)
pagination CSS - 페이징 - 트랜지션 효과 (Hoverable Transition Effect)
pagination CSS - 페이징 - 테두리 추가 (Bordered Pagination)
pagination CSS - 페이징 - 둥근테두리 효과 (Rounded bordered pagination)
pagination CSS - 페이징 - 링크칸 간격 띄우기 (Space Between Links)
pagination CSS - 페이징 - 글자 크기 (Pagination Size)
pagination CSS - 페이징 - 가운데 정렬 (Centered Pagination)
pagination CSS - 페이징 - (이전페이지/다음페이지/지정페이지) 이동 링크 버튼
pagination CSS - 페이징 - 빵메뉴 (= Breadcrumbs : 브레드크럼즈 = 메뉴 현재위치 표시)
column CSS - Multiple Columns - (멀티 컬럼 개괄) ※ 열 나누기 = 단락 나누기
column CSS - column-count 속성 - 컬럼 개수 지정 (= 요소 안 텍스트를 지정 컬럼개수로 구분 = …
column CSS - column-fill 속성 - 컬럼 채우기 방식 지정 (= column-fill속성 = 컬럼필속성…
column CSS - column-gap 속성 - 컬럼간의 간격 지정 (= column-gap속성 = 컬럼갭속성)
column CSS - column-rule 속성 - 컬럼구분자 스타일 일괄지정 (= 컬럼구분바 단축속성 = column…
column CSS - column-rule-color 속성 - 컬럼구분자 색상 지정 (= 컬럼구분바 색깔 = colum…
column CSS - column-rule-style 속성 - 컬럼구분자 모양 지정 (= 컬럼구분바 생김새 = colu…
column CSS - column-rule-width 속성 - 컬럼구분자 너비 지정 (= 컬럼구분바 두께 = colum…
10/25
목록
찾아주셔서 감사합니다. Since 2012