CSS position은 요소를 원하는 위치에 자유롭게 이동시키기 위한 속성으로 static, relative, absolute, fixed, sticky(지원하는 브라우저 많지 않음)가 있다.
position: relative;
를 주면 요소가 붕 떠서 원래 있던 공간을 벗어나지만, 원래 있던 공간을 기억하고 있고, 부모/형제 요소도 알고 있음. 즉, 다른 요소에 영향주지 않는다.* {
box-sizing: border-box;
margin: 0;
}
body {
font-family: "Lato", sans-serif;
}
h1 {
font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #273444;
}
.user-card {
width: 240px;
height: 56px;
padding: 8px 12px;
border: 1px solid #E5EAEF;
border-radius: 4px;
}
.user-card::after {
content: '';
display: block;
clear: left;
}
.user-photo, .user-name {
float: left;
}
.user-photo {
position: relative;
margin-right: 12px;
}
.user-photo img {
display: block;
width: 40px;
height: 40px;
border-radius: 50%;
}
.user-name {
padding: 8px 0;
}
.user-status {
position: absolute;
right: -2px;
bottom: -2px;
}
.user-status {
display: block;
width: 12px;
height: 12px;
border-radius: 50%;
border: 2px solid #fff;
background-color:#21D891;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Position 1</title>
<link href="https://fonts.googleapis.com/css?family=Lato&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="./style.css" />
</head>
<body>
<div class="user-card">
<div class="user-photo">
<img src="./assets/user.jpg" alt="Kimbug" />
<span class="user-status" aria-label="Active"></span>
</div>
<h1 class="user-name">
Kimbug
</h1>
</div>
</body>
</html>
출처: '김버그의 HTML&CSS는 재밌다'를 학습하고 정리한 내용입니다.