요소의 위치를 정하는 방법을 지정하는 속성
요소를 이동시키기 위한 좌표 속성인 offset을 활용한다.
div { position: static | absolute | fixed | relative | sticky | initial | inherit }
/* 기본값 static */
static
: relative
:absolute
: fixed
: Normal-flow란?
일반적인 상황에서 각의 요소들의 성질에 따라 배치 되는 순서(흐름)를 뜻합니다. 예를 들면, block 레벨 요소들은 상하로 배치되고, inline 레벨 요소들은 좌우로 배치되는 것을 말합니다.
containing 영역
컨텐츠를 담는 영역으로써 padding, content 영역을 말한다.
해당 좌표에 대한 거리
top|bottom|left|right: auto|length|initial|inherit;
top: 50%;
left: 10px;
bottom: -10px;
right: auto;
padding과 margin에서 % 값을 적용할 때, 상하좌우 방향에 관계없이 가로 사이즈를 기준으로 %값이 계산된다.
하지만 offset은 top, bottom (상하) 는 기준이 되는 요소의 height 값 left, right (좌우) 는 width값에 대하여 계산되어진다.
우선 position
속성으로 어떤 position방식을 할지 지정하고
top
, right
, bottom
, left
속성으로 위치를 지정할 수 있다.
static
원래 있어야할 위치에 있게 한다.
모든 요소들의 position
디폴트 속성은 static
이다.
relative
absolute
fixed
sticky
원래 있어야할 위치에 있게 한다
스크롤을 움직이는 동안 원래 위치에 있다가 벗어나는 순간 계속해서 윈도우에 고정되어 있다.