px는 화면에 표시되는 가장 기본적인 단위로, 픽셀을 기준으로 고정된 크기를 나타냅니다. 일반적으로 1픽셀은 1개 점(dot)을 의미합니다.
예시)
.element {
font-size: 16px;
width: 200px;
height: 100px;
}
rem은 root em의 약자로, HTML 루트 요소
(<html>)의 폰트 크기를 기준으로 상대적인 크기를 지정합니다. 보통 브라우저의 기본 폰트 크기는 16px이므로, 1rem은 기본적으로 16px에 해당합니다.
html {
font-size: 16px; /* 1rem = 16px */
}
.element {
font-size: 2rem; /* 2 * 16px = 32px */
padding: 1rem; /* 1 * 16px = 16px */
}
em은 상위 요소의 폰트 크기를 기준으로 상대적인 크기를 지정합니다. em은 상위 요소마다 다른 기준 크기를 갖기 때문에, 중첩 요소가 많아질수록 크기가 복잡해질 수 있습니다.
/* 상위 요소 폰트 크기 설정 */
.container {
font-size: 20px;
}
.element {
font-size: 1.5em; /* 1.5 * 20px = 30px */
padding: 2em; /* 2 * 20px = 40px */
}
vh는 뷰포트 높이를 기준으로 크기를 지정하는 단위입니다. 브라우저 창의 높이를 100으로 나눈 값을 기준으로 하며, 1vh는 브라우저 창 높이의 1%를 의미합니다.
.element {
height: 50vh; /* 화면 높이의 50% */
}
vw는 뷰포트 너비를 기준으로 크기를 지정하는 단위입니다. 브라우저 창의 너비를 100으로 나눈 값을 기준으로 하며, 1vw는 브라우저 창 너비의 1%입니다.
.element {
width: 80vw; /* 화면 너비의 80% */
}