231 of 313 menu

position 속성

position 속성은 요소의 위치 지정 방식을 설정합니다. 이 속성은 주로 top, right, bottom, left 속성과 함께 사용되며, 이들은 각각 위쪽, 오른쪽, 아래쪽, 왼쪽의 간격을 설정합니다.

문법

선택자 { position: absolute | relative | fixed | static | sticky; }

position의 값

설명
absolute 절대 위치 지정. 요소가 문서의 일반적인 흐름에서 제거되고, 위치가 지정된 가장 가까운 조상 요소(있는 경우) 또는 브라우저 창을 기준으로 위치가 지정됩니다.
relative 상대 위치 지정. 요소가 문서 흐름에서의 자신의 원래 위치를 기준으로 이동되지만, 원래 차지하던 공간은 그대로 유지됩니다.
fixed 고정 위치 지정. 요소가 문서의 일반적인 흐름에서 제거되고 브라우저 창을 기준으로 위치가 지정됩니다. 페이지를 스크롤해도 제자리에 유지됩니다.
static 정적 위치 지정. 위치 지정이 적용되지 않음을 의미하며, 요소는 일반적인 방식으로 동작합니다.
sticky 고착 위치 지정. 요소는 스크롤 시 지정된 위치에 도달할 때까지 relative처럼 동작하다가, 그 후에는 지정된 위치에 고정됩니다(fixed처럼).

기본값: static.

예제 . 절대 위치 지정

요소를 작은 간격을 두고 화면의 왼쪽 상단 모서리에 배치해 보겠습니다:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

예제 . 절대 위치 지정

이번에는 요소를 작은 간격을 두고 화면의 오른쪽 상단 모서리에 배치해 보겠습니다:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: absolute; top: 40px; right: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

예제 . 고정 위치 지정

고정 위치 지정에서는 요소가 스크롤해도 제자리에 유지됩니다:

<div class="elem"></div> <div class="main"> some long text </div> .elem { position: fixed; top: 40px; left: 50px; width: 100px; height: 100px; background-color: #98fb98; } .main { width: 400px; text-align: justify; margin: 20px auto; }

:

예제 . 상대 위치 지정

상대 위치 지정에서는 요소가 자신의 원래 위치를 기준으로 이동하지만, 다른 요소들은 요소가 이동하지 않은 것처럼 동작합니다:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { display: flex; justify-content: flex-row; } .elem { margin: 0 3px; width: 100px; height: 100px; background-color: #add8e6; } .elem2 { position: relative; top: 20px; left: 30px; background-color: #e6addf; }

:

예제 . 중첩

부모 요소의 position 속성 값이 relative인 경우, 절대 위치가 지정된 자식 요소는 부모 요소를 기준으로 위치가 지정됩니다:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

예제 . 중첩

부모 요소의 position 속성 값이 absolute인 경우에도, 절대 위치가 지정된 자식 요소는 부모 요소를 기준으로 위치가 지정됩니다:

<div class="container"> <div class="elem"></div> </div> .container { position: absolute; top: 30px; left: 30px; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 0px; right: 0px; width: 100px; height: 100px; background-color: #add8e6; }

:

예제 . 고착 위치 지정

요소의 position 속성 값이 sticky인 경우, 요소는 스크롤 시 지정된 위치에 도달할 때까지 relative처럼 동작하다가, 그 후에는 그 위치에 고정됩니다. 고착 헤더를 만들어 보겠습니다:

<h1>Main Site Header</h1> <div class="header">header header header</div> <div class="main"> some long text </div> h1 { text-align: center; } .header { position: sticky; top: 0; padding: 20px; background: #f0f0f0; text-align: center; font-weight: bold; } .main { width: 400px; margin: 20px auto; border: 1px solid #ccc; padding: 20px; text-align: justify; }

:

예제 . 위치 없음

절대 위치 지정이 적용된 요소에 위치를 지정하지 않으면, 요소는 위치 지정이 없을 때 서 있던 자리에 그대로 있게 되지만, 다른 요소들은 그 요소를 인지하지 않게 됩니다:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

예제 . 한 축

절대 위치 지정 시 한 축에만 위치를 지정할 수 있습니다. 예를 들어, top 속성만 설정하면, 수직 방향으로는 원하는 위치에 배치되지만, 수평 방향으로는 원래 서 있던 자리에 그대로 있게 됩니다:

<div class="container"> <div class="elem elem1"></div> <div class="elem elem2"></div> <div class="elem elem3"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { display: inline-block; } .elem2 { position: absolute; top: 20px; width: 50px; height: 50px; background-color: #e6addf; } .elem1, .elem3 { width: 100px; height: 100px; background-color: #add8e6; }

:

예제 . 모든 위치

절대 위치 지정 시 너비와 높이를 지정하지 않고 모든 방향의 위치를 지정할 수 있습니다. 이 경우 요소는 부모 블록의 중앙에 위치하게 됩니다:

<div class="container"> <div class="elem"></div> </div> .container { position: relative; border: 1px solid red; width: 500px; height: 300px; } .elem { position: absolute; top: 20px; bottom: 20px; left: 20px; right: 20px; background-color: #add8e6; }

:

함께 보기

  • 요소의 쌓임 순서를 지정하는 z-index 속성
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부