일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- skt membership
- Prefix Sums
- 알고리즘
- 백준
- 포토샵
- Photoshop
- stl
- Codility
- 수학
- spring
- 통신사할인
- Gap
- align-items
- Flexbox
- pandas
- Design Pattern
- 상태
- dataframe
- grid
- 강화학습
- CSS
- c++
- SK바이오사이언스
- series
- 에라토스테네스의 체
- 확률
- margin
- 소수
- Javascript
- c
Archives
- Today
- Total
sliver__
Responsive Web Design 핵심 요소: max-width와 rem 완전 이해하기 본문
728x90
반응형 웹디자인을 제대로 구현하기 위해 꼭 알아야 할 두 가지 CSS 속성이 있습니다: **max-width**와 rem 단위입니다. 이번 포스트에서는 이 두 가지가 정확히 어떻게 작동하는지, 왜 사용하는지, 실제 예제와 함께 이해해 보겠습니다.
max-width: 부모 요소의 크기에 맞춰 유연하게 줄어드는 너비
기본 예시: width만 쓸 경우
<div class="test"></div>
.test {
width: 1000px;
padding: 100px;
background-color: red;
}
- width: 1000px를 설정하면 브라우저 크기를 줄여도 요소는 계속 1000px을 유지합니다.
- 뷰포트보다 넓어질 경우 수평 스크롤이 생기며 사용성이 떨어집니다.
✅ max-width로 바꿔보기
.test {
max-width: 1000px;
padding: 100px;
background-color: red;
}
- 처음엔 동일하게 1000px로 보이지만,
- 화면 너비가 1000px보다 작아지면 자동으로 부모 요소의 100% 너비로 줄어듭니다.
- 즉, 너비가 최대 1000px까지는 유지되지만, 그보다 작아지면 자동으로 줄어드는 유연한 레이아웃이 됩니다.
📌 요약:
컨테이너 너비가 max-width보다 크면 → max-width 적용
작으면 → 부모 요소의 100% 너비 적용
rem: 전체 디자인을 유연하게 조절하는 단위
rem이란?
- rem = root element (HTML)의 font-size 기준 단위
- 별도 설정 없을 경우 기본 브라우저 폰트 크기인 16px이 기준이 되어
1rem = 16px이 됩니다.
예시: rem을 이용한 크기 지정
.test {
max-width: 50rem; /* 50 x 16px = 800px */
font-size: 2rem; /* 2 x 16px = 32px */
padding: 4rem; /* 4 x 16px = 64px */
}
- 모든 크기를 rem으로 설정하면, root 폰트 사이즈를 바꾸는 것만으로 전체 UI 크기를 유연하게 조절할 수 있습니다.
✅ HTML의 font-size를 변경해보자
html {
font-size: 10px;
}
- 이러면 1rem = 10px이 되며 계산이 매우 쉬워집니다.
- 단, 이 방식은 사용자의 브라우저 설정을 무시하게 되므로 접근성 측면에서 좋지 않습니다.
✅ 올바른 방법: 브라우저 기본 설정을 존중하면서도 계산하기 쉽게
html {
font-size: 62.5%; /* 16px × 0.625 = 10px */
}
- 1rem = 10px처럼 간편한 계산이 가능하면서도,
- 사용자가 브라우저 폰트 크기를 바꾸면 그 설정이 반영됩니다.
📌 요약:
rem을 사용하면 디자인 전체를 루트 폰트 크기에 따라 자동으로 조절할 수 있습니다.
접근성을 지키기 위해 font-size: 62.5%를 사용하는 것이 CSS 업계에서 널리 사용되는 방법입니다.
🎯 마무리
- max-width: 요소가 너무 넓어지는 걸 방지하면서도 유연하게 크기 조절이 가능함
- rem 단위: 디자인 전체를 한 번에 스케일 조절할 수 있는 강력한 단위
- html { font-size: 62.5%; }: 계산을 쉽게 하면서도 접근성을 고려한 베스트 프랙티스
이제부터는 px 대신 rem을 적극적으로 사용하고, max-width를 활용해 유연한 레이아웃을 만들어 보세요!
728x90
'Frontend > CSS' 카테고리의 다른 글
Responsive Web Design(반응형 웹 디자인)이란? (0) | 2025.05.06 |
---|---|
SEO(Search Engine Optimization)란? (1) | 2025.05.06 |
웹사이트 제작의 7단계 실전 개발 프로세스: 코딩 전에 꼭 알아야 할 것들 (0) | 2025.05.06 |
섹션 컴포넌트 & 레이아웃 패턴 요약 (0) | 2025.05.05 |
페이지: CSS로 카루셀(Carousel) 컴포넌트 구현하기 (0) | 2025.05.05 |
Comments