---
id: wiki-2026-0508-mobile-first-approach
title: Mobile-First Approach
status: verified
canonical_id: wiki-2026-0508-mobile-first-approach
aliases: [Mobile First, Mobile-First Design, MFA]
duplicate_of: none
source_trust_level: A
confidence_score: 0.94
verification_status: applied
tags: [web, design, responsive, ux, performance, css]
raw_sources: []
last_reinforced: 2026-05-10
github_commit: pending
tech_stack: [html, css, javascript, tailwind, lighthouse]
---
# Mobile-First Approach
## 한 줄 정의
스타일·기능을 **작은 모바일 화면 기준으로 먼저 설계**하고 큰 화면을 위해 점진적으로 확장하는 반응형 웹 전략. Luke Wroblewski(2009) 제안 이후 사실상 표준이 됐고, 2020년대 모바일 트래픽 60%+·Google **mobile-first indexing** 으로 강제력을 갖는다.
## 핵심
### 핵심 원칙
- **Progressive Enhancement**: 모바일 baseline → tablet/desktop 으로 `min-width` media query 추가.
- **Touch-first**: 최소 탭 영역 44×44 px (Apple HIG) / 48 dp (Material).
- **Performance budget**: 3G 환경 LCP < 2.5s, 초기 JS < 170 KB gzip.
- **Viewport meta**: ``.
- **Content priority**: 핵심 정보가 첫 화면(scroll 없이) 보이도록 정보 계층 재설계.
### Modern Core Web Vitals (2024+)
- **LCP** ≤ 2.5s — Largest Contentful Paint.
- **INP** ≤ 200ms — Interaction to Next Paint (FID 대체, 2024).
- **CLS** ≤ 0.1 — Cumulative Layout Shift.
### Container Queries (2023+)
화면 폭이 아닌 **컴포넌트의 부모 크기**에 반응. `@container` 으로 모듈 단위 반응형 — mobile-first 사고와 결합 시 강력.
### 응용
전자상거래(모바일 conversion 이 데스크톱 추월), 뉴스/블로그, 사내 도구, PWA, 검색 SEO(mobile-first index).
## 💻 패턴
### CSS — base는 모바일, min-width로 확장
```css
/* mobile baseline */
.card {
padding: 1rem;
font-size: 1rem;
display: block;
}
/* ≥ 768px: tablet */
@media (min-width: 48rem) {
.card { padding: 1.5rem; display: flex; gap: 1rem; }
}
/* ≥ 1024px: desktop */
@media (min-width: 64rem) {
.card { padding: 2rem; max-width: 64rem; margin-inline: auto; }
}
```
### Viewport + 안전영역(notch)
```html
```
### Touch target 보장
```css
.btn, a.tap {
min-height: 44px;
min-width: 44px;
padding: 12px 16px;
touch-action: manipulation; /* 300ms 탭 지연 제거 */
}
```
### Responsive image (mobile bandwidth 보호)
```html
```
### Tailwind — mobile-first by default
```html