์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- css
- html
- wai-aria
- JavaScript
- ํผํฐ ๋ชจ๋น์ ๋ฒ์ง ๋ชจํ
- Cmarket
- ์ ์ด์ฝฅ ๋์จ
- props drilling
- ๋ฒ๋ค๋ง
- React
- WEB
- Effect Hook
- prototype
- ํ ์คํธ ์์
- fetch api
- Lifting state
- ๋ฒ์ง ๋ชจํ
- git
- jsx
- State
- ์ปดํจํฐ ๊ณตํ
- ์คํ ์ด์ธ ์ฝ๋
- ๊ณ ์ฐจํจ์
- ์คํ ์ด์ธ ์ฝ๋42๊ธฐ
- ์๋งจํฑ์์
- ํ๋ก๊ทธ๋๋จธ์ค
- ํผํฐ ๋ชจ๋น
- BFS์ DFS
- css animation
- Study
- Today
- Total
roqkf
๋ฏธ๋์ด์ฟผ๋ฆฌ ๋ณธ๋ฌธ
โค๏ธ๐ฅ ๋ฏธ๋์ด ์ฟผ๋ฆฌ
CSS2.1 ๋ถํฐ ๋ฏธ๋์ด ํ์ ์ผ๋ก ๋จ๋ง๊ธฐ ์ข ๋ฅ์ ๋ฐ๋ผ ๊ฐ๊ฐ ๋ค๋ฅธ ์คํ์ผ์ ์ ์ฉ์ํค๋ ๊ฒ ๊ฐ๋ฅํด์ก์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ๊ธฐ์ ํน์ฑ์ ์ ํํ ํ๋จํ๊ธฐ ์ด๋ ต๋ค๋ ๋จ์ ๋๋ฌธ์ ๋๋ฆฌ ์ฌ์ฉ๋์ง ์์์ผ๋, CSS3๋ถํฐ๋ ์ด ๋ฏธ๋์ด ํ์ ์ ๊ฐ์ ํ์ฌ ์ข ๋ ๊ตฌ์ฒด์ ์ธ ์กฐ๊ฑด์ผ๋ก ํ์ํ ์คํ์ผ์ ์ ์ฉํ ์ ์๋๋ก ํ์์ต๋๋ค. ์ด๋ฐ ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ ๋ฐ์ํ ์น ๋์์ธ์ ํต์ฌ ๋ถ๋ถ์ ๋๋ค. ๋ทฐํฌํธ(๋ธ๋ผ์ฐ์ ์ฐฝ)์ ํฌ๊ธฐ์ ๋ฐ๋ผ ์๋ก ๋ค๋ฅธ ์กฐํ์ ์์ฑํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
โค๏ธ๐ฅ ๋ฏธ๋์ด ์ฟผ๋ฆฌ ์ ์ฉ๋ฒ
๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์๋ ๋ค์ ๋ฐฉ๋ฒ๋ค์ด ์์ต๋๋ค.
<link href="cssํ์ผ์ด๋ฆ.css" media="screen and (min-width: 400px) and (max-width: 1000px)" rel="stylesheet">
CSS ํ์ผ์ HTML ํ์ผ์ ์ ์ฉํ๋ ๊ฒ์ฒ๋ผ <head>ํ๊ทธ ์์ <link>ํ๊ทธ๋ฅผ ์์น ์ํต๋๋ค. ๋ค๋ฅธ css ํ์ผ์ ์ ์ฉํ ๋์ ๋ค๋ฅธ ์ ์ ๋ฏธ๋์ด ์์ฑ์ ์ฌ์ฉํ์ฌ ์กฐ๊ฑด์ ์ง์ ํ๋ค๋ ์ ์ ๋๋ค. ๋ฏธ๋์ด ์์ฑ ๋ด ํด๋น ์กฐ๊ฑด์ ๋ง์กฑํ ๋์๋ง ํด๋น css ํ์ผ์ ๋ถ๋ฌ์ค๊ฒ ๋ฉ๋๋ค.
<style type="text/css" media="screen and (min-width: 400px) and (max-width: 1000px)">
/* ์ฌ๊ธฐ css๋ฅผ ์์ฑํฉ๋๋ค. */
</style>
HTML ํ์ผ ๋ด <head>ํ๊ทธ ์์์ <style>ํ๊ทธ๋ฅผ ์ด์ด ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ ์๋ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ๋ ๋ฏธ๋์ด ์์ฑ ๋ด ํด๋น ์กฐ๊ฑด์ ๋ง์กฑํ ๋์๋ง ํด๋น ์คํ์ผ์ ์ ์ฉํ๊ฒ ๋ฉ๋๋ค.
โจ CSS ํ์ผ ํน์ ํ๊ทธ ์์์ ์ง์ ๋ฏธ๋์ด ์ฟผ๋ฆฌ ์์ฑ
ํน์ CSS ํ์ผ ์ ๋๋ ํ๊ทธ ์์์ ์ง์ ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ์ฌ ํด๋น ๋ฏธ๋์ด ์ฟผ๋ฆฌ์ ์กฐ๊ฑด์ ๋ง์กฑํ ๋ ์คํ์ผ์ ์ ์ฉ์ํค๋ ๋ฐฉ๋ฒ๋ ์์ต๋๋ค.
โค๏ธ๐ฅ ๋ฏธ๋์ด ์ฟผ๋ฆฌ ๊ตฌ๋ฌธ
@media ๋ฏธ๋์ด ํ์
(์กฐ๊ฑด(๋๋น ๋ฐ ๋์ด)) {
(CSS ์
๋ ฅํ๋ ๋ถ๋ถ)
}
--์์
@media screen (max-width: 400px) {
body {
color: red;
}
}
โจ ๋ฏธ๋์ด ์ฟผ๋ฆฌ์ ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์กฐ
- ๋ฏธ๋์ด ํ์ : ์ฝ๋๊ฐ ์ด๋ค ๋ฏธ๋์ด๋ฅผ ์ํ ๊ฒ์ธ์ง ๋ธ๋ผ์ฐ์ ์ ์๋ ค์ค๋๋ค.
- ์กฐ๊ฑด(๋๋น ๋ฐ ๋์ด) : ์ง์ ํ ์ฐฝ์ ๋๋น๋ ๋์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ธฐ์ค์ด ๋ง์กฑ๋๋ฉด ์คํ์ผ์ด ์ ์ฉ๋๊ณ , ๋ง์กฑ๋์ง ์์ผ๋ฉด ์ ์ฉ๋์ง ์์ต๋๋ค.
- CSS ์ ๋ ฅํ๋ ๋ถ๋ถ : ์กฐ๊ฑด๋ฌธ์ ํต๊ณผํ๊ณ , ๋ฏธ๋์ด ํ์ ์ด ์ฌ๋ฐ๋ฅธ ๊ฒฝ์ฐ ์คํ์ผ์ด ์ ์ฉ ๋ฉ๋๋ค.
โจ ๋ฏธ๋์ด ํ์ (Media Type)
์ง์ ํ ์ ์๋ ๋ฏธ๋์ด ํ์ ์ ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์์ต๋๋ค.
- all : ๋ชจ๋ ๋ฏธ๋์ด ํ์
- print : ํ๋ฆฐํฐ
- screen : ์ปดํจํฐ ํ๋ฉด
- speech : ์คํฌ๋ฆฐ ๋ฆฌ๋
์ด ์ธ์๋ ๋ค์ํ ํ์ ์ด ์์ผ๋ ์ค๋ฌด์์ ์์ฃผ ์ฐ์ด๋ ํ์ ์ all, print, screen ์ ๋์ด๋ฉฐ, ๊ทธ ์ค์์๋ screen์ด ๋๋ถ๋ถ์ ๋๋ค. ํ๋ฉด์ ์ถ๋ ฅํ๋ ๋์คํ๋ ์ด๊ฐ ์๋ ๋ฏธ๋์ด๋ค์ ๋๊ฐ screen ํ์ ์ ์ํ๊ธฐ ๋๋ฌธ์ ํ์ค์ ์ผ๋ก ๊ณ ๋ คํด์ผ ํ๋ ๋ฏธ๋์ด๋ ์ ๋ถ ์ฌ๊ธฐ์ ํด๋นํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
โจ ์กฐ๊ฑด(๋๋น ๋ฐ ๋์ด)
๋ฐ์ํ ๋์์ธ์ ๋ง๋ค๊ธฐ ์ํด ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ๊ธฐ๋ฅ์ ๋ทฐํฌํธ ๋๋น์ด๋ฉฐ, min-width์ max-width, width ๋ฑ์ ๋ฏธ๋์ด ๊ธฐ๋ฅ์ ํ์ฉํด ๋ทฐํฌํธ๊ฐ ํน์ ๋๋น ์ด์ ๋๋ ์ดํ์ธ ๊ฒฝ์ฐ CSS๋ฅผ ์ ์ฉํ ์ ์์ต๋๋ค.
@media screen and (width: 600px) {
body {
color : red;
}
}
width(ํน์ height)๋ ๋ธ๋ผ์ฐ์ ์ ์ฐฝ ํฌ๊ธฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ min- ํน์ max- ์ ๋์ฌ๋ฅผ ๋ถ์ด๊ฒ ๋๋ฉด ์ต์๊ฐ์ธ์ง ์ต๋๊ฐ์ธ์ง ํ์ํ ์ ์์ต๋๋ค.
@media screen and (max-width: 400px) {
body {
color: blue;
}
}
์๋ฅผ ๋ค์ด ๋ทฐํฌํธ๊ฐ 400px ๋ณด๋ค ์ข์ ๊ฒฝ์ฐ ์์ ํ๋์์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ์ด๋ฐ ์์ผ๋ก max-width ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
โจ ๋ฐฉํฅ์ฑ
์ธ๋ก ๋ชจ๋์ธ์ง ๊ฐ๋ก ๋ชจ๋์ธ์ง ๊ฒ์ฌํ์ฌ CSS ์คํ์ผ์ ์ฃผ๊ณ ์ถ์ ๊ฒฝ์ฐ, orientation์ผ๋ก ๊ฒ์ฌ ํ ์ ์์ต๋๋ค.
@media (orientation: landscape) {
body {
color: rebeccapurple;
}
}
์๋ฅผ ๋ค์ด ์ฅ์น๊ฐ ๊ฐ๋ก ๋ฐฉํฅ์ธ ๊ฒฝ์ฐ, ํด๋น ์ฝ๋๋ฅผ ํตํด ๋ณธ๋ฌธ์ ํ ์คํธ ์์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
โจ ๋ณต์กํ ๋ฏธ๋์ด ์ฟผ๋ฆฌ
๋ฐ์ํ ์น์ ๊ตฌ์ถํ๋ค ๋ณด๋ฉด ๋ ๋ณต์กํ ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ํ์ฉํ๊ณ ์ถ์ ๋๊ฐ ์์ต๋๋ค. ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ๊ฒฐํฉํ๊ฑฐ๋, ์ฟผ๋ฆฌ ๋ชฉ๋ก์ ๋ง๋ค๊ฑฐ๋ ํ๋ ์์ผ๋ก ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์ข ๋ ๊น์ด ์๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค.
โจ ๋ ผ๋ฆฌ๊ณฑ(and) ๋ฏธ๋์ด ์ฟผ๋ฆฌ
and๋ฅผ ์ฌ์ฉํด ๋ฏธ๋์ด ๊ธฐ๋ฅ์ ํฉ์น ์ ์์ต๋๋ค.
@media screen and (min-width: 400px) and (orientation: landscape) {
body {
color: blue;
}
}
์ฌ๊ธฐ์ HTML ๋ณธ๋ฌธ ํ ์คํธ๊ฐ ํ๋์์ด ๋๋ ์ ์ผํ ๊ฒฝ์ฐ๋ ๋ทฐํฌํธ์ ๋๋น๊ฐ ์ต์ 400ํฝ์ ์ด์์ด๊ณ ์ฅ์น๊ฐ ๊ฐ๋ก ๋ชจ๋์ธ ๊ฒฝ์ฐ์๋ง ํด๋นํฉ๋๋ค. ๋ ์กฐ๊ฑด์ ๋ชจ๋ ๋ง์กฑํด์ผ์ง ์ฟผ๋ฆฌ ์์ CSS ์คํ์ผ์ด ์ ์ฉ ๋ฉ๋๋ค.
โจ ๋ ผ๋ฆฌํฉ(or) ๋ฏธ๋์ด ์ฟผ๋ฆฌ
์ฝค๋ง๋ก ๋ถ๋ฆฌ๋ฅผ ํ๋ค๋ฉด ๋ฏธ๋์ด ์ฟผ๋ฆฌ์ ํด๋น ์กฐ๊ฑด ์ค ์ด๋ ํ๋๋ฅผ ๋ง์กฑ์ํฌ ๋ CSS ์คํ์ผ์ ์ ์ฉ์ํฌ ์ ์์ต๋๋ค.
@media screen and (min-width: 600px), screen and (orientation: landscape) {
body {
color: blue;
}
}
์ด๋ฐ ์์ผ๋ก ๋ทฐํฌํธ์ ๋์ด๊ฐ 600px ์ด์์ด๊ฑฐ๋, ์ฅ์น๊ฐ ๊ฐ๋ก ๋ฐฉํฅ์ธ ๊ฒฝ์ฐ ํ ์คํธ๋ ํ๋์์ด ๋ฉ๋๋ค. ์ด ์ค ํ๋๋ผ๋ ์กฐ๊ฑด์ ๋ง์กฑํ๋ค๋ฉด ์ฟผ๋ฆฌ ์์ CSS ์คํ์ผ์ด ์ ์ฉ ๋ฉ๋๋ค.
โจ ๋ถ์ (not) ๋ฏธ๋์ด ์ฟผ๋ฆฌ
not ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด ๋ฏธ๋์ด ์ฟผ๋ฆฌ์ ์๋ฏธ๋ฅผ ๋ฐ๋๋ก ์ ์ฉ์ํต๋๋ค.
@media not all and (orientation: landscape) {
body {
color: blue;
}
}
์ด ์์๋ ๋ฐฉํฅ์ด ์ธ๋ก์ธ ๊ฒฝ์ฐ์๋ง ํ ์คํธ๊ฐ ํ๋์์ผ๋ก ์ ์ฉ์ด ๋๊ฒ ๋ฉ๋๋ค.
'๐ป Development > ๊ธฐ๋ก' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ปดํจํฐ ๊ณตํ] ์ปดํจํฐ ๊ตฌ์กฐ (1) | 2023.03.01 |
---|---|
๋ฒ๋ค๋ง & Webpack (0) | 2023.01.24 |
๋ฐ์ํ ์น (0) | 2023.01.16 |
๋ธ๋ผ์ฐ์ ๋ ๋๋ง (0) | 2023.01.16 |
๋ธ๋ผ์ฐ์ (0) | 2023.01.16 |