본문 바로가기

UIUX Web Standard/COA Lab's CSS

position 속성 1, z-index

※position 특징

위치를 정해주는 방법 중 하나로, 조상(부모)와 자식간의 관계에 의한 위치속성이다. 

 

속성 속성명 설명
position static 기본값
absolute

부모나, 조상요소에 대해 위치값을 부여받는다.

위치지정속성인 top, left, right, bottom의 값을 함께 적는다.

fixed

브라우저에 대해 절대 위치값을 갖게 된다.

위치지정속성인 top, left, right, bottom의 값을 함께 적는다.

relative 코딩의 흐름에서 자신이 갖는 위치가 기본값이며, 이를 바꾸고 싶을 때는  "left:20px" 처럼 값을 더 부여한다.
그러면 원래 자기의 위치에서 좌측으로 20px 들어가서 위치한다.
--------------------------------------------------------
또한, 기준역할을 지정받음(후손선택자에 absolute를 지정할때 사용하는 의미)
sticky

스크롤 할때 고정으로 자리를 잡고 있다가 스크롤값이 어느정도 위치가 되면 스크롤을 따라 올라가게 된다. 이는 relation과 fixed의 중간정도의 성격을 갖고 있다. 

 IE/Edge 15 이전 브라우저는 적용 안됨.

 사파리 6.1부터도 -webkit- 벤더프리픽스를 붙여줄 것을 권한다.

 


 

#wrap>div에 position, top, left로 위치를 적용

 


 

부모요소에 relative를 부여해 기준이 되는 위치를 정해 주고,

자식요소에는 absolute를 부여하게 되면,

absolute가 부여된 자식요소인 박스1~3까지는 top과 left로부터, 얼마씩 떨어진 위치에 자리를 잡는다.

일부러 겹쳐보았을 때, 이 박스들이 겹치는 것을 볼 수 있는데,

겹쳐져 있는 순서는 일반적으로 레이어처럼 작은 숫자, 먼저 코딩한 요소가 아래에 자리잡는다.

 


 

<!DOCTYPE html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>위치속성 2 - position</title>
  <style>
	#wrap{
		position: relative;
		border: 1px solid #000;
		top:200px;/*생략가능*/
	}
	#wrap>div{
		width:150px;
		height:150px;
		background:rgb(0,153,255);
		border:5px solid #000;
		margin:50px;
		position: absolute;
		font-size: 3.0em;
		font-weight: bold;
		text-align: center;
		color: #fff;
	}
	#box1{top:100px;left:100px; z-index:3;}
	#box2{top:200px;left:200px;	z-index:2;}
	#box3{top:300px;left:300px; z-index:1;}
    /*z-index 숫자가 큰 요소가 위로 보인다.*/

  </style>
 </head>
 <body>
 
 <div id="wrap">
	<div id="box1">box1</div>
	<div id="box2">box2</div>
	<div id="box3">box3</div>
 </div>

  
 </body>
</html>

 


 

아래 그림처럼 이 순서를 바꾸고 싶을 때는 z-index 속성을 부여하며,

z-index 속성은 큰 값일수록 브라우저의 위에 위치하게 된다.


 

두번째 박스에 z-index를 9999로 적용한 예


#box1{top:100px;left:100px; z-index:3;}
#box2{top:200px;left:200px;	z-index:9999;}
#box3{top:300px;left:300px; z-index:1;}

 


 

 

 

'UIUX Web Standard > COA Lab's CSS' 카테고리의 다른 글

html5를 활용한 기초 레이아웃  (0) 2021.01.29
position 속성 2 - 활용  (0) 2021.01.27
float 속성 3 - 레이아웃 연습 1~5  (0) 2021.01.27
float 속성 2 - 박스정리  (0) 2021.01.27
float속성 1  (0) 2021.01.26