Notice
Recent Posts
Recent Comments
Link
ยซ   2026/05   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
more
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

็„ก์ œ

Media query (๋ฏธ๋””์–ด ์ฟผ๋ฆฌ) ๋ณธ๋ฌธ

<style>

Media query (๋ฏธ๋””์–ด ์ฟผ๋ฆฌ)

yo-u-loo 2026. 3. 23. 11:36

 

๐ŸŸข Media query (๋ฏธ๋””์–ด ์ฟผ๋ฆฌ)

ํ™”๋ฉด ํฌ๊ธฐ, ํ•ด์ƒ๋„, ๊ธฐ๊ธฐ ํŠน์„ฑ ์ƒํƒœ ์กฐ๊ฑด์— ๋”ฐ๋ผ CSS๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ ์šฉํ•˜๋Š” ๊ธฐ์ˆ .

 

โ—ผ ๋ฌธ๋ฒ•

@media (์กฐ๊ฑด) {
  /* ์กฐ๊ฑด์ด ๋งž์„ ๋•Œ ์ ์šฉํ•  CSS */
  selector {
    property: value;
  }
}
  • @media (๋ฏธ๋””์–ด ์œ ํ˜•) and (์กฐ๊ฑด) { }

 

1๏ธโƒฃ media type (๋ฏธ๋””์–ด ์œ ํ˜•)

์–ด๋–ค ์žฅ์น˜์—์„œ ์Šคํƒ€์ผ์„ ์ ์šฉํ• ์ง€ ๊ฒฐ์ •ํ•˜๋Š” ์กฐ๊ฑด.

๐Ÿ”น all

๋ชจ๋“  ๋ฏธ๋””์–ด ์žฅ์น˜.

@media (max-width: 768px) {
  body {
    background: lightblue;
  }
}
  • ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ƒ๋žต ๊ฐ€๋Šฅ.

 

๐Ÿ”น screen

์ปดํ“จํ„ฐ, ํƒœ๋ธ”๋ฆฟ, ์Šค๋งˆํŠธํฐ ๋“ฑ ํ™”๋ฉด์ด ์žˆ๋Š” ๊ธฐ๊ธฐ.

@media screen and (max-width: 768px) {
  body {
    background: lightblue;
  }
}

 

๐Ÿ”น print

์ธ์‡„ ๊ฒฐ๊ณผ๋ฌผ์ด๋‚˜ ์ธ์‡„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ™”๋ฉด.

@media print {
  body {
    background: white;
    color: black;
  }
}

 


 

2๏ธโƒฃ ์กฐ๊ฑด

๐Ÿ”น and

@media (min-width: 768px) and (max-width: 1024px) {
}
  • ๋ชจ๋“  ์กฐ๊ฑด์ด ๋งŒ์กฑ๋  ๋•Œ๋งŒ ์ ์šฉ. (AND ์กฐ๊ฑด)

 

๐Ÿ”น not

@media not (max-width: 768px) {
}
  • ์ „์ฒด ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ๋ฅผ ๋ฐ˜๋Œ€๋กœ ํ•ด์„. (๋ฐ˜๋Œ€ ์กฐ๊ฑด)

 

๐Ÿ”น , (์‰ผํ‘œ)

@media (max-width: 768px), (orientation: portrait) {
}
  • ์—ฌ๋Ÿฌ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋งŒ ์ฐธ์ด์–ด๋„ ์ ์šฉ. (OR ์—ฐ์‚ฐ)

 


 

3๏ธโƒฃ ๊ฐ€๋กœ/์„ธ๋กœ ๋ฐ ํšŒ์ „ ์†์„ฑ

๋ฐ˜์‘ํ˜•์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์ค€์œผ๋กœ, ํ™”๋ฉด์˜ ํฌ๊ธฐ์™€ ๋ฐฉํ–ฅ์— ๋”ฐ๋ฅธ ์„ธ๋ฐ€ํ•œ ์กฐ์ •.

๐Ÿ”นWidth (๊ฐ€๋กœ) ์ค‘์‹ฌ์„ค๊ณ„

/* ํ™”๋ฉด ๊ฐ€๋กœ๊ฐ€ ์ •ํ™•ํžˆ 600px์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (width: 600px) {
  body {
    background-color: lightblue;
  }
}

/* ํ™”๋ฉด ๊ฐ€๋กœ๊ฐ€ 800px ์ด์ƒ์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (min-width: 800px) {
  body {
    background-color: lightgreen;
  }
}

/* ํ™”๋ฉด ๊ฐ€๋กœ๊ฐ€ 500px ์ดํ•˜์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (max-width: 500px) {
  body {
    background-color: lightcoral;
  }
}
  • width: ๋ทฐํฌํŠธ(viewport, ํ™”๋ฉด) ๊ฐ€๋กœ ๊ธธ์ด
  • min-width: ์ตœ์†Œ ๊ฐ€๋กœ ๊ธธ์ด. (ํฐ ํ™”๋ฉด ๋Œ€์‘)
  • max-width: ์ตœ๋Œ€ ๊ฐ€๋กœ ๊ธธ์ด. (์ž‘์€ ํ™”๋ฉด ๋Œ€์‘)

 

๐Ÿ”น Height (์„ธ๋กœ)

/* ํ™”๋ฉด ์„ธ๋กœ๊ฐ€ ์ •ํ™•ํžˆ 600px์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (height: 600px) {
  body {
    background-color: lightblue;
  }
}

/* ํ™”๋ฉด ์„ธ๋กœ๊ฐ€ 800px ์ด์ƒ์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (min-height: 800px) {
  body {
    background-color: lightgreen;
  }
}

/* ํ™”๋ฉด ์„ธ๋กœ๊ฐ€ 500px ์ดํ•˜์ผ ๋•Œ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ */
@media (max-height: 500px) {
  body {
    background-color: lightcoral;
  }
}
  • height: ๋ทฐํฌํŠธ(viewport, ํ™”๋ฉด) ์„ธ๋กœ ๊ธธ์ด
  • min-height: ์ตœ์†Œ ์„ธ๋กœ ๊ธธ์ด. (ํฐ ํ™”๋ฉด ๋Œ€์‘)
  • max-height: ์ตœ๋Œ€ ์„ธ๋กœ ๊ธธ์ด. (์ž‘์€ ํ™”๋ฉด ๋Œ€์‘)

 

๐Ÿ”น Orientation (ํšŒ์ „) ๊ธฐ๊ธฐ์˜ ๋ฐฉํ–ฅ ์ƒํƒœ ๊ฐ์ง€.

/* ์„ธ๋กœ ๋ชจ๋“œ์ผ ๋•Œ */
@media (orientation: portrait) {
  body {
    font-size: 14px;
  }
}

/* ๊ฐ€๋กœ ๋ชจ๋“œ์ผ ๋•Œ */
@media (orientation: landscape) {
  body {
    font-size: 16px;
  }
}
  • portrait: ์„ธ๋กœ ๋ชจ๋“œ. (๋†’์ด > ๋„ˆ๋น„)
  • landscape: ๊ฐ€๋กœ ๋ชจ๋“œ. (๋„ˆ๋น„ > ๋†’์ด)

 


 

โ—ผ Breakpoints (๋ฏธ๋””์–ด ์ฟผ๋ฆฌ ์ค‘๋‹จ์ )

ํ™”๋ฉด ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋ ˆ์ด์•„์›ƒ์ด ๋ณ€๊ฒฝ๋˜๋Š” ๊ธฐ์ค€ ์ง€์ .

/* ๋ชจ๋ฐ”์ผ (๊ธฐ๋ณธ) */
.container {
  display: block;
}

/* ํƒœ๋ธ”๋ฆฟ */
@media (min-width: 768px) {
  .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

/* ๋ฐ์Šคํฌํƒ‘ */
@media (min-width: 1024px) {
  .container {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

 

  • ๋ชจ๋ฐ”์ผ: ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ธ”๋ก ๋‹จ์ผ ์—ด ๋ ˆ์ด์•„์›ƒ
  • ํƒœ๋ธ”๋ฆฟ: ํ™”๋ฉด 768px ์ด์ƒ → 2์—ด ๊ทธ๋ฆฌ๋“œ
  • ๋ฐ์Šคํฌํ†ฑ: ํ™”๋ฉด 1024px ์ด์ƒ → 3์—ด ๊ทธ๋ฆฌ๋“œ

 

 

๐Ÿ“Š ๊ธฐ๋ณธ ๊ธฐ์ค€ (๊ฐ€์žฅ ๋งŽ์ด ์“ฐ๋Š” ๊ตฌ์กฐ) ๐Ÿ“Š

๊ธฐ๊ธฐ ๊ตฌ๋ถ„ ์ค‘๋‹จ์  (Breakpoints)
๋ชจ๋ฐ”์ผ ~ 767px
ํƒœ๋ธ”๋ฆฟ 768px ~ 1023px
๋ฐ์Šคํฌํƒ‘ 1024px ~

 


 

โ—ผ ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ ์ ์šฉ ๋ฐฉ๋ฒ•

1๏ธโƒฃ ์™ธ๋ถ€ CSS ํŒŒ์ผ๋กœ ๋ถ„๋ฆฌ

HTML์˜ <link> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์กฐ๊ฑด์— ๋งž๋Š” ํ•ด๋‹น CSS ํŒŒ์ผ์„ ๋กœ๋“œ.

<link rel="stylesheet" media="screen and (min-width: 768px)" href="tablet.css">
  • ์žฅ์ : ํŒŒ์ผ์„ ๊ธฐ๋Šฅ/๋””๋ฐ”์ด์Šค๋ณ„๋กœ ๋ถ„๋ฆฌ ๊ฐ€๋Šฅ, ๊ตฌ์กฐ๊ฐ€ ๋ช…ํ™•ํ•จ.
  • ๋‹จ์ : HTTP ์š”์ฒญ ์ฆ๊ฐ€ → ์„ฑ๋Šฅ ์ €ํ•˜ ๊ฐ€๋Šฅ, ๊ด€๋ฆฌ ํŒŒ์ผ ๋งŽ์•„์ง, ์š”์ฆ˜์€ ๋ฒˆ๋“ค๋ง ํ™˜๊ฒฝ์—์„œ ๋น„ํšจ์œจ์ .

๐Ÿ‘‰ ์•„์ฃผ ํฐ ํ”„๋กœ์ ํŠธ์—์„œ ๋ถ„๋ฆฌ ํ•„์š”ํ•  ๋•Œ, ํ”„๋ฆฐํŠธ ์ „์šฉ CSS (print.css) ๊ฐ™์€ ํŠน์ˆ˜ํ•œ ๊ฒฝ์šฐ๋งŒ ์‚ฌ์šฉ.

 

2๏ธโƒฃ CSS ๋‚ด๋ถ€์—์„œ ์ง์ ‘ ์ž‘์„ฑ (ํ‘œ์ค€ ๋ฐฉ์‹)

CSS ํŒŒ์ผ ๋‚ด๋ถ€์—์„œ ์ง์ ‘ ๋ถ„๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

/* ๊ธฐ๋ณธ ์Šคํƒ€์ผ (๋ชจ๋ฐ”์ผ ์šฐ์„ ) */
body { font-size: 14px; }

/* 1024px ์ด์ƒ์˜ ํ™”๋ฉด (PC) */
@media screen and (min-width: 1024px) {
  body { font-size: 18px; }
}
  • ์žฅ์ : ํ•œ ํŒŒ์ผ์—์„œ ๊ด€๋ฆฌ → ์œ ์ง€๋ณด์ˆ˜ ์‰ฌ์›€, ์ฝ”๋“œ ํ๋ฆ„ ์ดํ•ด ์‰ฌ์›€, ์„ฑ๋Šฅ์ƒ ์œ ๋ฆฌ. (์š”์ฒญ ๊ฐ์†Œ)

 

 

๐Ÿ“โ€Š POINT ๐Ÿ“โ€Š

โœ”๏ธ ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ๋Š” ์ฝ˜ํ…์ธ ๊ฐ€ ๊นจ์ง€๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์ง€์ ์„ ์ค‘๋‹จ์ (Breakpoint)์œผ๋กœ ์žก๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹๋‹ค. โœ”๏ธ

 


 

๐Ÿ“Œ ์›น ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ฐฝ์—์„œ ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ ํ‘œ์‹œํ•˜๊ธฐ

  1. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์—ด๊ธฐ
    • Chrome ๊ธฐ์ค€: F12 ๋˜๋Š” Ctrl + Shift + I (Mac: Cmd + Option + I)
    • Firefox, Edge ๋“ฑ๋„ ์œ ์‚ฌํ•˜๊ฒŒ ์—ด ์ˆ˜ ์žˆ๋‹ค.
  2. ๊ธฐ๊ธฐ ํˆด๋ฐ” ํ™œ์„ฑํ™”
    • ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ƒ๋‹จ์˜ ํœด๋Œ€ํฐ/ํƒœ๋ธ”๋ฆฟ ์•„์ด์ฝ˜ ํด๋ฆญ
    • ๋‹จ์ถ•ํ‚ค: Ctrl + Shift + M (Mac: Cmd + Shift + M)
  3. ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ ํ‘œ์‹œ
    • ๊ธฐ๊ธฐ ํˆด๋ฐ”๊ฐ€ ์ผœ์ง„ ์ƒํƒœ์—์„œ ํ™”๋ฉด ์ƒ๋‹จ ๋ˆˆ๊ธˆ์ž ๊ทผ์ฒ˜์— ์žˆ๋Š” “Show media queries” ์˜ต์…˜ ์ฒดํฌ
    • ํ™”๋ฉด ํญ์— ๋”ฐ๋ผ ์ƒ‰์ƒ ๋ง‰๋Œ€๋กœ ๊ฐ ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ์˜ ์ ์šฉ ๊ตฌ๊ฐ„์ด ํ‘œ์‹œ๋จ
    • ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํŠน์ • ํ™”๋ฉด ๋„ˆ๋น„์—์„œ ๋ ˆ์ด์•„์›ƒ์ด ์–ด๋–ป๊ฒŒ ๋ฐ”๋€Œ๋Š”์ง€ ๋ฐ”๋กœ ํ™•์ธ ๊ฐ€๋Šฅ

๐Ÿ’ก ์ถ”๊ฐ€ ํŒ:

  • ๋ˆˆ๊ธˆ์ž๋ฅผ ๋“œ๋ž˜๊ทธํ•ด์„œ ๋ธŒ๋ผ์šฐ์ € ๋„ˆ๋น„๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ๊ฐ€ ์ ์šฉ๋˜๋Š” ์ˆœ๊ฐ„ ์ƒ‰์ƒ์ด ๋ณ€ํ•ด, ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ˜์‘ํ˜• ๋ณ€ํ™”๋ฅผ ๊ด€์ฐฐํ•  ์ˆ˜ ์žˆ๋‹ค.
  • Chrome DevTools์—์„œ Responsive ๋ชจ๋“œ ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์žฅ์น˜ ํ”„๋ฆฌ์…‹์„ ์„ ํƒํ•˜๋ฉด ์‹ค์ œ ์Šค๋งˆํŠธํฐ/ํƒœ๋ธ”๋ฆฟ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅ.

 

'<style>' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Flexbox Layout (ํ”Œ๋ ‰์Šค๋ฐ•์Šค ๋ ˆ์ด์•„์›ƒ)  (0) 2026.03.24
Grid Layout ๊ณผ ์š”์†Œ  (0) 2026.03.24
RWD Image ๋ฐ˜์‘ํ˜• ์ด๋ฏธ์ง€  (0) 2026.03.23
em๊ณผ rem  (0) 2026.03.23
Viewport (๋ทฐํฌํŠธ)  (0) 2026.03.23