오늘은 CSS 위치 속성에 대해 학습합니다. display
, position
, float
속성의 동작 방식과 요소들의 위치를 지정하는 방법을 살펴볼 예정입니다.
display
속성요소의 표시 방식을 결정하는 속성입니다.
div
태그의 기본 속성: display: block;
(한 줄 전체를 차지)inline
속성: 요소의 내용 크기만큼 공간 차지block
속성: 한 줄 전체 차지.first {
display: inline;
background-color: aqua;
}
.second {
background-color: green;
}
.third {
background-color: yellow;
}
💡 Tip: 공통 속성은 개별적으로 지정하지 않고, 상위 선택자를 활용해 적용 가능
div {
display: inline;
}
position
속성요소의 위치를 지정하는 속성으로 다음과 같은 유형이 있습니다.
static
(정적 위치 - 기본값)relative
(상대 위치).relative {
position: relative;
left: 30px;
top: 100px;
}
fixed
(고정 위치).fixed {
position: fixed;
top: 50px;
right: 0;
}
absolute
(절대 위치).absolute {
position: absolute;
top: 50px;
right: 0;
}
sticky
(스티키 위치).sticky {
position: sticky;
top: 20px;
}
중요 포인트
relative
는 원래 위치를 기준으로 이동absolute
는 부모 기준 이동fixed
는 화면 기준 고정sticky
는 특정 스크롤 위치에서 고정
float
속성요소를 좌우로 배치할 수 있게 해주는 속성입니다.
float: left;
→ 요소를 왼쪽으로 정렬하고, 오른쪽 공간 활용 가능float: right;
→ 요소를 오른쪽으로 정렬하고, 왼쪽 공간 활용 가능img {
float: left;
margin-right: 20px;
}
💡 Tip: float
적용 후 다른 요소가 아래로 내려오도록 하려면 clear: both;
사용
.clearfix::after {
content: "";
display: block;
clear: both;
}
* { color: red; }
h1 { font-size: 20px; }
.title { color: blue; }
#header { background-color: grey; }
h1, h2, p {
text-align: center;
}
>
), 자손 선택자 ( ``)div > p { color: red; }
(바로 아래 p
태그만 적용)div p { color: red; }
(모든 하위 p
태그 적용)<!DOCTYPE html>
<html lang="ko">
<head>
<style>
.container {
position: relative;
width: 600px;
height: 300px;
border: 2px solid black;
}
.box {
position: absolute;
top: 50px;
left: 100px;
background-color: aqua;
width: 100px;
height: 100px;
}
</style>
</head>
<body>
<div class="container">
<div class="box">절대 위치</div>
</div>
</body>
</html>
display
속성으로 요소의 레이아웃을 제어할 수 있다.position
속성으로 요소의 위치를 지정할 수 있다.float
속성으로 이미지와 텍스트 배치를 조정할 수 있다.💡 Tip: 직접 실습해보면서 차이를 체험해 보는 것이 중요합니다.