๋ชจ๋ฐ์ผ๊ฐ๋ฐ์ ์์์ฃผ๋ฉด ์ข์ HTML/CSS์ด ์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ธ๊ฒ๋ ์๊ณ ์์ฃผ์ฌ์ฉํ๋ ๊ฒ๋ค์ ๋๋ค.
๋ชจ๋ฐ์ผ ๊ฐ๋ฐ์ ์ฒ์ ํ๊ฒ๋๋ค๋ฉด ๊ฑฐ์ ํ์์ ์ผ๋ก ์ฌ์ฉํ๊ฒ ๋ ๊ฒ๋ค์ ๋๋ค.
1. viewport meta ํ๊ทธ
2. @media query ์ฌ์ฉํ๊ธฐ
3. ํด์๋๋ณ๋ก css ์ ์ฉํ๊ธฐ
4. ๋ชจ๋ฐ์ผ ์๋จ ํ๋ฉด ์ ๋ฐ๊พธ๊ธฐ
5. ํด์๋๋ณ ์ฌ์ด์ฆ ์๋ํ! vw๋จ์
1. viewport meta ํ๊ทธ
content ์ width=device-width ๋ก ๋ธ๋ผ์ฐ์ ๋๋น๋ฅผ ์ฅ์น ๋๋น์ ๋ง์ถ์ด ํ์ํ๊ฒ๋ฉ๋๋ค.
initial-scale๋ก ๊ธฐ๋ณธ ํ๋๋๋น๋ฅผ ์ฌ์ฉํ๋ค๋์ง (1.0 = 100%),
use-scalable=no ๋ฅผ ์ค์ ํ๋ฉด ๋ชจ๋ฐ์ผ์์ ํ๋๋ฅผ ๊ฐ์ ๋ก ๋ง์์๋ ์์ต๋๋ค.
์ฌ์ฉ์์)
1
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
cs |
๋ง์ฝ viewport metaํ๊ทธ๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ์ด๋ป๊ฒ๋ ์ง ๋น๊ตํด ๋ณผ๊ป์!
1. PCํ๋ฉด
2. viewport metaํ๊ทธ ์๋๊ฒฝ์ฐ
3. viewport metaํ๊ทธ ์๋๊ฒฝ์ฐ
๋ณด์๋ค์ํผ viewport๊ฐ ์๋๊ฒฝ์ฐ PCํ๋ฉด์ ๊ทธ๋๋ก ์ถ๋ ฅํฉ๋๋ค.
์น์ผ๋ก ๋ชจ๋ฐ์ผ๊ฐ๋ฐ์ ํ๊ธฐ ์ํด์๋ผ๋ฉด ๊ฑฐ์ ํ์๋ก ์ด ํ๊ทธ๋ฅผ ์ถ๊ฐํด์ค์ผ ํฉ๋๋ค.
โ
์ฐธ์กฐ : https://developer.mozilla.org/ko/docs/Mozilla/Mobile/Viewport_meta_tag
2. @media query ์ฌ์ฉํ๊ธฐ
ํ์ง๋ง ์น ๊ฐ๋ฐ์ ํ ๋ px ๋ฑ์ผ๋ก ๊ณ ์ ๋ ๊ฐ์ ์ฌ์ฉํ๋ค๋ฉด,
๋น์ฐํ ํ๋ฉด์ด ํ์ด์ง์ ๋ฐ์์๊ณ , %๋จ์๋ก ์ฌ์ฉํ๋ค๊ณ ํด์ ํ๊ณ๊ฐ ์๊ฒ ์ง์?!
๊ทธ๋ ๊ธฐ๋๋ฌธ์ ํ๋ฉด ํด์๋ ๋ณ๋ก CSS๋ฅผ ๋ฐ๋ก๋ฐ๋ก ์์ฑํด์ฃผ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
media query๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. media query๋ CSS ์์ ์ฌ์ฉํฉ๋๋ค!
โ
๋น์จ์๋ฐ๋ฅธ aspect-ratio ๋ผ๋์ง, ๋์ด๊ฐ device-height ๋ฑ ๋ง์ ์์ฑ์ด ์กด์ฌํฉ๋๋ค๋ง,
์ฃผ๋ก ๋ง์ด ์ฌ์ฉํ๋๊ฒ์ max-width๋ min-width๋ฅผ ํตํด
์ต์ 00px ์ด์์์๋ง ์ ์ฉ(min-width:00px) ๋๋ ์ต๋ 00px ์ดํ(max-width:00px)์ผ๋๋ง ์ ์ฉ
์ด๋ฐ์์ผ๋ก ์ ์ผ๋ง์ด ์ฌ์ฉํ๋๊ฒ ๊ฐ์ต๋๋ค.
( ์ ๋ง ๊ทธ๋ด์๋ ์๊ฒ ์ง๋ง์... )
์ฌ์ฉ์์ )
1
|
@media (min-width: 1450px) { ... } // 1450px ์ด์ ํ๋ฉด ์ฆ, 1451px ๋ถํฐ ์ ์ฉ
|
cs |
- HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<div class="wrapper">
<header class="header">HEADER</header>
<div class="container">
<nav class="lnb">LEFT MENU</nav>
<div class="content">
<ul>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
<li>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quasi at aliquam neque impedit! Soluta placeat neque odit doloribus voluptatum maxime, repellendus eligendi, nemo asperiores nobis amet maiores consectetur unde quisquam.</li>
</ul>
</div>
</div>
</div>
|
cs |
- CSS
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
32
33
34
35
36
37
38
39
40
41
42
|
* {
padding:0;
margin:0;
}
.header{
width:100%;
padding:40px 0;
text-align: center;
background-color:lightblue;
font-size: 30px;
font-weight: 600;
}
.container{
overflow:hidden;
display:flex;
}
.lnb{
width:18%;
float:left;
background-color:rgb(47, 88, 102);
}
.content{
float:right;
padding:30px;
}
.content ul{
list-style-position: inside;
}
@media (max-width: 400px) {
.header{ background-color:lightgreen; }
}
@media (min-width: 1000px) {
.header{ background-color:orange; }
}
|
cs |
- ๊ฒฐ๊ณผ
์ฐธ์กฐ : https://developer.mozilla.org/en-US/docs/Web/CSS/@media
3. ํด์๋๋ณ๋ก css ์ ์ฉํ๊ธฐ
CSSํ์ผ ์์ฒด์ @media๋ฅผ ์ฝ์ ํ์ฌ ์์ฑํ ์ ์์ง๋ง,
CSSํ์ผ์ ๋ถ๋ฌ์ฌ๋์์ media์์ฑ์ ์ด์ฉ ํ์ฌ ์์ฌ๋ ์ฌ์ด์ฆ์ ์ํ๋ CSSํ์ผ์ ๋ถ๋ฌ์ฌ ์ ๋ ์์ต๋๋ค.
โ
์ฌ์ฉ์์ )
1
2
3
|
<link rel='stylesheet' media='screen and (max-width: 400px)' href='style1.css' />
<link rel='stylesheet' media='screen and (max-width: 400px and min-width: 1000px)' href='style.css' />
<link rel='stylesheet' media='screen and (min-width: 1000px)' href='style2.css' />
|
cs |
2๋ฒ๊ณผ ๋๊ฐ์ด ์๋๋ฉ๋๋ค!
โ
4. ๋ชจ๋ฐ์ผ ์๋จ ํ๋ฉด ์ ๋ฐ๊พธ๊ธฐ
๋ชจ๋ฐ์ผ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฉด ๊ธฐ๋ณธ ๋ธ๋ผ์ฐ์ ์์ ์ ๊ณตํ๋ ํค๋์ ํธํฐ ์์ญ์ด ์์ต๋๋ค.
์์ฆ์ ์ด ์์ต์ ํฌํจํ์ฌ ๋์์ธ๋ ๊ณ ๋ ค๋ฅผ ํ๊ธฐ๋๋ฌธ์ ์ด ํ๊ทธ๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
<meta name="theme-color" content="์ปฌ๋ฌ๊ฐ"> ์ด๋ฐ์์ผ๋ก ์ ์ฉํ๋ฉด๋๋๋ฐ์,
์ฐธ๊ณ ๋ก ์ปฌ๋ฌ๊ฐ์ red, black ์ด๋ ๊ฒ๋ ์ง์ ์ด ์๋๊ณ #f0f0f0, #000 ์ด์ฒ๋ผ HEX ์ฝ๋๋ก ์ง์ ํด์ผ ์ ์ฉ์ด ๋ฉ๋๋ค.
์์)
1
|
<meta name="theme-color" content="#b30000">
|
cs |
- ๊ฒฐ๊ณผ
์ด๋ ๊ฒ ์๋จ๋ฟ๋ง์๋๋ผ ํ๋จ์ ์์ด์ฝ ์๋ ๊ฐ์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
5. ํด์๋๋ณ ์ฌ์ด์ฆ ์๋ํ! vw๋จ์
vw๋จ์๋ ํด์๋๋ณ๋ก ์ ์ฉ๋๋ ๋จ์๋ก ์ ๋ ํ์ ์์ ์ ์ฉํ๊ฒ ์ฐ๊ณ ์์ต๋๋ค.
๋ณดํต ๋์์ธํ์ผ์ ๋ฐ์ผ๋ฉด px ๋จ์๋ก ์ฌํ ๋ฐ์,
vw๋ก ๊ณ์ฐํ๋๊ฒ์ ๊ฐ๋จํฉ๋๋ค.
์ด (์ ์ฉํดํ width๊ฐ/์ ์ฒดํ๋ฉดwidth๊ฐ)*100 ์ ํ๋ฉด๋ฉ๋๋ค.
์๋ฅผ๋ค์ด 1920px ํ๋ฉด์ 220px ์ ๊ฐ์ vw๋ก ์ ํํ๋ค๊ณ ํ๋ฉด
(220/1920)*100= 11.45833 ์ด๋ผ๋๊ฐ์ด ๋์ฌํ ๋ฐ์,
11.45vw ๋ 11.458vw๋ก ์ ๋นํ ์์์ ์ ์๋ผ ์ฌ์ฉํ์๋ฉด๋ฉ๋๋ค.
๊ทธ๋ผ ํด์๋๊ฐ ์ค์ด๋ค๋ฉด ๋น์จ์ ๊ทธ๋๋ก ์ ์ฉ์ด ๋์ด ๋ ์ด์์์ด ๊นจ์ง์ง ์์ต๋๋ค!
'๊ฐ๋ฐ ๐พ > HTML,CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ฐ์ด๋ฐ์ ์ข์ฐ๋ก ํผ์ณ์ง๊ฒ ํ๊ธฐ (0) | 2021.06.13 |
---|---|
์ฒดํฌ๋ฐ์ค CSS ์ปค์คํ (0) | 2021.06.06 |
CSS ํจํด ์ด์ผ๊ธฐ - BEM, SMACSS, OOCSS (0) | 2021.02.07 |
์์ฃผ์ฐ๋ css ์ ๋ฆฌ (0) | 2021.02.05 |
ํญ ๊ตฌํํ๊ธฐ - html, css, jquery (0) | 2021.02.03 |