▶ CSS References |
CSS Reference |
CSS Selectors |
CSS Functions |
CSS Reference Aural |
CSS Web Safe Fonts |
CSS Animatable |
CSS Units |
CSS PX-EM Converter |
CSS Colors |
CSS Color Values |
CSS Default Values |
CSS Browser Support |
CSS PX-EM Converter
CSS PX to EM Converter : 픽셀(PX)과 EM 단위 변환 가이드
- *픽셀(px)**과 EM 단위는 CSS에서 요소의 크기를 설정할 때 자주 사용하는 단위입니다. PX는 고정된 크기 단위이며,
EM은 상대적인 크기 단위로 부모 요소의
font-size
를 기준으로 크기가 결정됩니다. PX에서 EM으로 변환하거나 그 반대로 변환하는 작업은 웹 디자인의 유연성을 높이기 위해 자주 필요합니다.
이 가이드는 픽셀(PX)과 EM 단위 변환에 대한 기본 개념과 계산 방법을 설명합니다.
1. PX와 EM의 기본 개념
- 픽셀 (PX):
-
절대 단위로, 화면에서 고정된 크기를 나타냅니다.
-
1px은 일반적으로 화면에서 하나의 물리적 픽셀에 해당합니다.
-
예시:
p { font-size: 16px; }
-
위 코드는
<p>
요소의 글자 크기를 고정된 16px로 설정합니다.
-
- EM:
-
상대 단위로, 부모 요소의
font-size
에 따라 크기가 결정됩니다. -
부모의
font-size
가 16px이면,1em
은 16px에 해당하고,2em
은 32px에 해당합니다. -
예시:
p { font-size: 1.5em; }
-
위 코드는 부모 요소의
font-size
를 기준으로 글자 크기를 1.5배로 설정합니다. 만약 부모 요소의font-size
가 16px이라면,1.5em
은 24px에 해당합니다.
-
2. PX에서 EM으로 변환
EM 단위는 부모 요소의 font-size
를 기준으로 하기 때문에, PX 단위를 EM으로 변환하려면 기준 font-size
를 알고
있어야 합니다.
변환 공식:
EM 값 = PX 값 / 부모의 font-size 값
-
예시:
부모 요소의
font-size
가 16px일 때, 24px을 EM으로 변환하려면:24px ÷ 16px = 1.5em
-
코드 예시:
body { font-size: 16px; } p { font-size: 1.5em; /* 24px과 동일한 크기 */ }
-
3. EM에서 PX로 변환
EM 값을 PX 값으로 변환하려면 부모 요소의 font-size
에 EM 값을 곱하면 됩니다.
변환 공식:
PX 값 = EM 값 × 부모의 font-size 값
-
예시:
부모 요소의
font-size
가 16px일 때,2em
은 몇 px일까요?2em × 16px = 32px
-
코드 예시:
body { font-size: 16px; } p { font-size: 2em; /* 32px */ }
-
4. 루트 요소 (rem
)와의 비교
-
*
rem
*은 루트 요소 (<html>
)의font-size
를 기준으로 크기를 설정합니다. 반면 **em
*은 부모 요소의font-size
를 기준으로 하므로 더 유연하게 반응형 디자인을 만들 수 있습니다. -
예시:
{ font-size: 16px; /* 루트 요소의 크기 설정 */ } h1 { font-size: 2rem; /* 32px */ }
위 예시에서는
h1
요소가 32px로 설정됩니다. 이는 루트 요소의font-size
인 16px의 2배이기 때문입니다.
5. 실용적인 PX-EM 변환 예시
5.1 텍스트 크기 설정
만약 부모 요소의 font-size
가 18px이고, 텍스트 크기를 27px로 설정하려면 다음과 같이 변환할 수 있습니다:
27px ÷ 18px = 1.5em
-
CSS 코드:
body { font-size: 18px; } p { font-size: 1.5em; /* 27px */ }
5.2 마진이나 패딩 설정
상대적인 크기로 여백을 설정할 때 em
을 사용할 수 있습니다. 예를 들어, 10px의 마진을 em
으로 변환하려면:
10px ÷ 16px = 0.625em (부모 요소의 font-size가 16px일 때)
-
CSS 코드:
div { margin-top: 0.625em; /* 부모 요소의 font-size가 16px일 때, 10px과 동일 */ }
6. PX와 EM 사용 시 고려 사항
6.1 반응형 디자인
EM 단위는 반응형 디자인에서 매우 유용합니다. 부모 요소의 font-size
에 따라 유동적으로 크기가 변하기 때문에 화면 크기에 맞춰 텍스트나 레이아웃이
자연스럽게 조정됩니다.
6.2 중첩된 요소
EM은 부모 요소의 font-size
를 기준으로 하기 때문에, 중첩된 요소에서는 예상치 못한 크기가 될 수 있습니다. 이러한 경우에는
**rem
**을 사용하는 것이 더 안정적일 수 있습니다.
-
예시 (중첩된 요소의
em
):.parent { font-size: 16px; } .child { font-size: 2em; /* 32px */ } .grandchild { font-size: 0.5em; /* 16px 기준의 절반인 8px */ }
여기서
.grandchild
요소의font-size
는 부모 요소.child
의 2em(32px)을 기준으로 계산되기 때문에 8px이 됩니다.
6.3 접근성
고정된 크기(px) 대신 상대 크기(em, rem)를 사용하면 사용자가 브라우저에서 글꼴 크기를 조정할 때 웹 페이지가 더 유연하게 반응합니다. 이는 접근성 향상에 기여할 수 있습니다.
7. PX-EM 변환기 (온라인 도구)
CSS 설계에서 픽셀과 EM 값을 자주 변환해야 할 때는 온라인 변환기를 활용할 수 있습니다. 다음과 같은 온라인 도구들은 픽셀 값을 쉽게 EM으로 변환해 줍니다:
- PX to EM Converter: 사용자가 기준 폰트 크기를 입력하고 PX 값을 EM으로 변환하는 기능을 제공합니다.
- CSS Units Converter: PX, EM, REM, VH, VW 등 다양한 단위 간의 변환을 지원합니다.
요약
PX와 EM은 CSS에서 자주 사용하는 단위로, 픽셀은 고정된 크기 단위이고 EM은 부모 요소의 font-size
를 기준으로 하는 상대 단위입니다. PX에서
EM으로, 또는 EM에서 PX로 변환할 때는 부모 요소의 font-size
값을 기준으로 계산해야 합니다. EM과 REM
단위는 반응형 웹 디자인과 접근성 향상에 유용하며, 크기를 상대적으로 설정할 수 있어 다양한 화면 환경에 적응하는 웹 페이지를 만들 수 있습니다.