웹 개발을 하며 CSS를 사용하여 어느 정도 내가 원하는 대로 배치를 해야하는 상황이 비일비재 한데, CSS의 개념을 정확히 이해하지 못해서 헤멜 떄가 많았다. CSS를 통해 기본적으로 표시하고 배치하는 속성인 display와 position 속성에 대해 알아보자.
CSS는 기본적으로 박스들이 여러개 쌓여있는 것 처럼 생각해야 한다. 박스에는 padding, border, margin이 있다.
위와 같은 기본적인 속성외에도 width, background-color, text-shadow등 여러가지 속성들이 존재한다.
display는 요소의 표시 형식을 결정하는 것이다. 내부 디스플레이 유형과 외부 디스플레이 유형으로 나뉘고, 외부 디스플레이 유형은 박스 자체가 어떻게 배치되는 방법에 대해서 나타내며, 내부 디스플레이 유형은 박스 내부의 요소가 어떻게 배치되는 방법을 나타낸다. 크게 가장 일반적인 유형은 외부 디스플레이 유형인 block과 inline이다.
박스가 block으로 정의 되면 아래와 같은 특징을 가진다.
<div>
와 <p>
, <h1>
과 같은 태그들은 block 형식을 가진다.박스의 display 유형이 inline일 경우 다음과 같은 특징을 지닌다.
<a>
와 <span>
,<strong>
과 같은 태그들이 대표적으로 inline형식을 가지는 태그이다.inline과 block의 중간 지대를 가지는 inline-block 형식도 있다. 이것은 새 줄로 넘어가는 행갈이는 원치 않지만, weight와 height는 존중하기 원할 때 사용한다.
position은 문서 상의 요소를 배치하는 방법을 지정하는 것이다. top, right, bottom, left 속성이 요소를 배치할 최종 위치를 결정한다. position의 속성 값을 여러가지가 존재하는데 하나씩 알아보자
참고