필자추천 미디어쿼리 스펙
RWD 코딩을 하다 보면 미디어쿼리 스펙 기준을 어떻게 설정해야 할지 고민이 됩니다.
필자는 여러가지 이슈를 원인으로 아래 스펙을 추천 합니다.
미디어쿼리 상단 즉, 디폴트는 모바일온리 코딩으로 작성합니다.
모바일 온리 아래에 이 미디어쿼리를 작성 합니다.
@media screen and (min-width: 1366px) {
}
미디어쿼리 상단 즉, 디폴트는 모바일온리 코딩으로 작성합니다.
여기서 1366px은 HD를 의미 합니다.
모바일부터 HD까지는 FLEX를 권장합니다.
HD 이상 단순한 박스는 FLEX를 권장합니다.
HD 이상 복잡한 박스는 1000px or 1200px FIX를 권장합니다.
위 스펙을 설치한 예제는 아래와 같습니다.
https://codepen.io/lshjju/pen/xxXemMJ?editors=1100
material-html-css-default-improvement
...
codepen.io
이것은 필자의 추천이라 개인적인 성향과 취향이 어느 정도 반영 된 스펙입니다.
모던웹 트랜드를 알고 싶다면 아래 설명을 참고 하세요.
제미나이는 아래와 같은 스펙을 추천하고 있습니다.
필자 추천과 제미나이 추천 둘 다 확인하고 본인 마음 가는대로 선택해서 코딩하면 됩니다.
제미나이 추천 미디어쿼리 스펙
모던 웹 디자인에서 미디어 쿼리를 작성할 때 가장 중요한 변화는 '기기(Device)'가 아닌 '콘텐츠'와 '사용자 환경'에 집중하는 것입니다.
과거에는 단순히 아이폰이나 갤럭시의 가로 너비에 맞췄다면, 현재는 고해상도 디스플레이, 다크 모드, 그리고 새로운 CSS 문법을 활용하는 것이 정석입니다. 추천드리는 구문들을 정리해 드립니다.
1. 최신 Range Syntax (범위 구문)
이제 min-width나 max-width 대신 수학적 비교 연산자(<, <=, >, >=)를 사용할 수 있습니다. 가독성이 훨씬 뛰어나며 직관적입니다.
- 기존 방식: @media (max-width: 768px)
- 모던 방식: @media (width <= 768px)
2. 반응형 중단점 (Breakpoints) 추천
기기 종류가 너무 다양해졌기 때문에 구체적인 기기명보다는 범용적인 범위를 사용하는 것이 좋습니다. 최근에는 Mobile First(모바일 우선) 전략에 따라 min-width를 주로 사용합니다.
| 분류 | 중단점 (Breakpoint) | 설명 |
| Mobile | 기본 스타일 | 별도의 쿼리 없이 작성 |
| Tablet | @media (width >= 768px) | 태블릿 및 큰 폴더블 폰 |
| Desktop | @media (width >= 1024px) | 일반적인 노트북 및 데스크탑 |
| Large Screen | @media (width >= 1440px) | 고해상도 모니터 |
3. 사용자 기본 설정 대응 (Preference Queries)
모던 웹에서는 화면 크기뿐만 아니라 사용자의 시스템 설정에 대응하는 것이 필수적입니다.
다크 모드 대응
사용자가 시스템에서 다크 모드를 사용 중인지 확인합니다.
@media (prefers-color-scheme: dark) {
body {
background-color: #121212;
color: white;
}
}
애니메이션 줄이기
광과민성 증후군이나 멀미를 느끼는 사용자를 위해 애니메이션을 최소화합니다.
@media (prefers-reduced-motion: reduce) {
* {
animation: none !important;
transition: none !important;
}
}
4. 고해상도 디스플레이 대응 (Retina)
애플의 레티나 디스플레이처럼 픽셀 밀도가 높은 기기를 위해 더 선명한 이미지를 제공할 때 사용합니다.
@media (min-resolution: 2dppx) {
/* 고해상도 배경 이미지 적용 등 */
}
💡 전문가의 팁: CSS 변수와 조합하세요
미디어 쿼리 내부에서 스타일을 일일이 변경하기보다, **CSS 변수(Custom Properties)**의 값만 교체하는 방식이 유지보수에 훨씬 유리합니다.
:root {
--grid-columns: 1;
}
@media (width >= 768px) {
:root {
--grid-columns: 2;
}
}
.container {
display: grid;
grid-template-columns: repeat(var(--grid-columns), 1fr);
}
참고: 최신 문법인 Range Syntax(비교 연산자)는 대부분의 모던 브라우저에서 지원하지만, 아주 오래된 브라우저까지 대응해야 한다면 PostCSS 같은 도구를 사용하거나 기존 방식을 병행하는 것이 안전합니다.
혹시 특정 프레임워크(Tailwind, Styled-components 등)에서 사용할 코드가 필요하신가요? 구체적인 환경을 알려주시면 그에 맞는 설정을 짜드릴 수 있습니다.

'New' 카테고리의 다른 글
| 프론트엔드개발자는 4K 모니터와 Galaxy fold 가 반드시 필요할까? (0) | 2026.03.20 |
|---|---|
| 현재 대한민국에서 가장 많이 사용되는 모바일 디바이스 스펙 안내 (0) | 2026.03.20 |
| Quiz - 모던 웹폰트 베스트10 레퍼런스 만들기 (0) | 2026.03.20 |
| 네비게이션은 <ul>로 만들어야 할까 <div>로 만들어야 할까? (0) | 2026.03.20 |
| CodePen(코드펜) 온라인 에디터 매뉴얼 (0) | 2026.03.20 |