๋ฏธ๋์ด ์ฟผ๋ฆฌ(Media Query)๋?
์ฌ์ฉํ๋ ๊ธฐ๊ธฐ์ ํด์๋์ ๋ฐ๋ผ CSS๋ฅผ ๋ถ๊ธฐ์ํค๋ ๊ธฐ๋ฒ์ด๋ฉฐ, PC ์ด์ธ์๋ ์ค๋งํธํฐ์ด๋ ํ๋ธ๋ฆฟ PC ๋ฑ ๋ค์ํ ๊ธฐ๊ธฐ์์ ์น ์ํ์ ํ๋ ์ฌ๋๋ค์ ์ํ ๋ฐ์ํ ํ๋ก์ ํธ์ ๋ฐ๋์ ํ์ํ๋ค.
01. <link ~ media="">
<link rel="stylesheet" media="all and (min-width: 1000px)" href="style_pc.css">
์ต์ ๊ฐ๋กํญ์ด 1000px, ์ฆ 1000px๋ณด๋ค ๋์ ํด์๋์ผ ๋ style_pc.css๋ฅผ ์ฐ๊ฒฐํ๋ค๋ ๋ป์ด๋ค.
ํ๋ธ๋ฆฟ์ด๋ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ๋ง๋ค ๊ฐ๋กํญ์ ๋ค๋ฅด๋ฉฐ Chrome์ ๊ฐ๋ฐ์ ๋๊ตฌ์ Toggle device toolbar๋ฅผ ๋๋ฅด๋ฉด
๊ธฐ๊ธฐ๋ง๋ค์ ํด์๋๊ฐ ๋ฑ๋ก๋์ด ์๊ณ ๊ธฐ๊ธฐ ๋ชจ๋ธ ์ถ๊ฐ๋ ๊ฐ๋ฅํ๋ค.
๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ๋ณ ํด์๋
๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ | ๊ฐ๋ก | ์ธ๋ก |
---|---|---|
iPhone X | 375 | 812 |
iPhone 6, 7, 8 | 375 | 667 |
iPhone 6, 7, 8 plus | 414 | 736 |
iPhone 5 | 320 | 568 |
Galaxy S5, S8 | 360 | 640 |
Galaxy Note 8 | 360 | 640 |
iPad Pro | 1024 | 1366 |
. . . |
. . . |
. . . |
02. @media
์ฒ์ ๋ก๋ฉ ์ ์ฑ๋ฅ์ด ์ ํ๋์ง ์๋๋ก CSS ํ์ผ์ ํ๋๋ก ๋ง๋ค์ด์ CSS ๋ด๋ถ์์ ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ถ๊ธฐ์ํค๋ ๊ฒ์ด ์ผ๋ฐ์ ์ธ ํํ์ ๋ฐ์ํ์น CSS์ด๋ค.
@media all and (min-width: 1000px) {
/* ๋ชจ๋ ๊ธฐ๊ธฐ์์ ํด์๋๊ฐ ์ต์ 1000px ์ธ ๊ฒจ์ฐ ์ ์ฉํ ์์ฑ๋คโฆ */
}
all์ Media Type์ ๋ํ๋ด๋ฉฐ and ์ , ํ์ ๋์ด์ฐ๋๋ก ํ๋ค.
๋ฏธ๋์ด ํ์ ์ข ๋ฅ
Media Type | ์ค๋ช |
---|---|
all | ๋ชจ๋ ๋ฏธ๋์ด ์ฅ์น์ ์ฌ์ฉ (๊ธฐ๋ณธ๊ฐ) |
ํ๋ฆฐํฐ์ ์ฌ์ฉ | |
screen | PC, ํ๋ธ๋ฆฟ, ์ค๋งํธํฐ์ ์ฌ์ฉ |
speech | ์คํฌ๋ฆฐ ๋ฆฌ๋๊ธฐ๊ฐ ํ์ด์ง๋ฅผ ์ฝ๋๋ฐ ์ฌ์ฉ |
์์ 01)
body { color: red; }
@media only screen and (max-width:768px) {
body { color: blue; }
}
์ ๊ตฌ๋ฌธ์ ์๋ ๊ธ์์์ด ๋นจ๊ฐ์์ด์ง๋ง ํ๋ฉด์ด 768px๋ณด๋ค ์์์ก์ ๋๋ ํ๋์์ผ๋ก ๋ณ๊ฒฝํ๋ค๋ ๋ป์.
PC์์๋ ๋นจ๊ฐ์, ๋ชจ๋ฐ์ผ์์๋ ํ๋์์ผ๋ก ๋ํ๋จ.
์์ 02)
body {
color: blue;
}
@media only screen and (max-width:768px) {
body {
color: red;
}
}
์ ๊ตฌ๋ฌธ์ ์๋ ๊ธ์๋ ํ๋์์ธ๋ฐ 768px๋ณด๋ค ํ๋ฉด์ด ์ปค์ง๋ฉด ๊ธ์์์ ๋นจ๊ฐ์์ผ๋ก ๋ณ๊ฒฝํจ.
์์ 03)
๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์ด์ฉํด ๋ธ๋ผ์ฐ์ ์ ๋ฐฉํฅ์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ ์ด์์์ ์ ๊ณต ๊ฐ๋ฅ
@media only screen and (oreientation: portrait) {
body { background: skyblue; }
}
์ ๊ตฌ๋ฌธ์ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ๊ฐ ์ธ๋ก๋ฐฉํฅ์ด ๋๋ฉด ๋ฐฐ๊ฒฝ์์ ํ๋์์ผ๋ก ์ง์ ํ๋ค๋ ๋ป.
์์ 04)
@media only screen and (oreientation: landscape) {
body { background: lightgreen; }
}
์ ๊ตฌ๋ฌธ์ ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ๊ฐ ๊ฐ๋ก๋ฐฉํฅ์ด ๋๋ฉด, ๋ฐฐ๊ฒฝ์์ ์ฐ๋์์ผ๋ก ์ง์ ํ๋ค๋ ๋ป.
์์ 05)
์ผํ๋ก ๊ตฌ๋ถํ์ฌ ์กฐ๊ฑด์ ์ถ๊ฐ ํ ์ ์๋ค.
@media only screen and (max-width: 900px) and (min-width: 600px), (min-width: 1000px) {
body { color: red; }
}
์ ๊ตฌ๋ฌธ์ ๊ฐ๋ก๊ฐ 600px ์์ 900px ์ฌ์ด์ผ ๋, ๊ทธ๋ฆฌ๊ณ 1100px ์ด์์ผ ๋์๋ง ๊ธ์์์ ๋นจ๊ฐ์์ผ๋ก ์ง์ ํ๋ค๋ ๋ป.
์ค์ต
Figma๋ก ๋ง๋ ๋ชจ๋ฐ์ผ, ํ๋ธ๋ฆฟ, PC ๋ ์ด์์ 3๊ฐ์ง๋ฅผ HTML๊ณผ CSS & ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์ด์ฉํด ๋ง๋ค์ด๋ณด๋๋ก ํ์.
HTML, CSS ์์ค๋ ์ฝ๋ํ์ ์ฐธ์กฐํ ๊ฒ.
๋ ์ด์์ ๊ณํ
์ฝ๋ฉ & ๊ฒฐ๊ณผ
'CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CSS] SCSS & Pug ํ์ฉ - ๊ฐ์์ง ์ ๋๋ฉ์ด์ ๋ง๋ค๊ธฐ๐ถ (10) | 2022.08.18 |
---|---|
[CSS] Sass(SCSS) ์์๋ณด๊ธฐ (3) | 2022.08.18 |
[CSS] ๊ธฐ๋ณธ ๋ฌธ๋ฒ - ์คํ์ผ์ํธ๋ฅผ ๋ถ๋ฌ์ค๋ ๋ฐฉ๋ฒ๋ค ์ ๋ฆฌ (4) | 2022.08.14 |
[CSS] ๋นํธ๋งต ๋ฐฉ์๊ณผ ๋ฒกํฐ ๋ฐฉ์ ์์๋ณด๊ธฐ (11) | 2022.08.09 |
[CSS] ๋ ์ด์์ ๋ฐฐ์น ์ ํ 3๊ฐ์ง ์์๋ณด๊ธฐ (6) | 2022.07.25 |
๋๊ธ