align-items๋ ๊ฐ์ด์ฐ๋ฉด align-content๊ฐ ์ก์๋จน๋๋ค
flex๋ ์์ ์๋ ๋ฐ์ค๋ค์ ํ์ค์ ์ญ ์ข์ฐ๋ฐฐ์น ํด์ฃผ๋ ์ฉ๋!! ๊ทธ๋์ flex ์๊ฑธ์ด์ฃผ๋ฉด ๋ฐ์ค ํ๋๋ ๋ค์์ค๋ก ๋์ด๊ฐ๋ค
flex : ๋ด๋ถ๋ฅผ flex ์ ๋ ฌ
inline-flex : ๋ด๋ถ๋ฅผ flex / ๋ด ์์ฒด inline
flex: 1; ๊ฐ์ ์ฐจ์งํ๋ ๋น์จ!!!!!
flex ์์ดํ
์ ๊ฑธ์ด์ค๋ค!!!!
container์ display: flex; ๊ฑธ์ด๋์ผ๋ฉด
๊ฐ์ box๋ง๋ค flex: 1; ์ ๊ฑธ์ด์ค๋ค!
๐จcontainer์ ๊ฑธ์ด๋๋ค
=> ๋จผ์ display: grid; ๋ฃ์ด๋๊ณ ์ฌ์ฉ!! flex๋ ๋๊ฐ์ ์ด์น
grid-template-rows: 100px 100px; //100px์ง๋ฆฌ 2ํ
grid-template-columns: 100px 100px 100px; //100px์ง๋ฆฌ 3์ด
๐จcontainer์ ๊ฑธ์ด๋๋ค
row-gap: 10px;
column-gap: 20px;
๐จ๋ณํฉํ๊ณ ์ถ์ ๋ฐ์ค์ ํด๋์ค ํ๋ ๋ ๋ง๋ค์ด์ ๊ฑธ์ด๋๋ค
grid-row-start: ํด๋น์์ ์์ ๋ผ์ธ ๋ฒํธ (ํ)
grid-row-end: ํด๋น์์ ๋ ๋ผ์ธ ๋ฒํธ
= grid-row: 1 / 3; ํ์ค๋ก!
/ ํ 1๋ฒ๋ผ์ธ๋ถํฐ 3๋ฒ๋ผ์ธ๊น์ง ๋ณํฉ!/
=grid-row:1 / span 2;
/ ํ 1๋ฒ๋ผ์ธ๋ถํฐ 2์ค !!!!/
/////////////////////////////////////////////////
grid-column-start: ํด๋น์์ ์์ ๋ผ์ธ ๋ฒํธ (์ด)
grid-column-end: ํด๋น์์ ๋ ๋ผ์ธ ๋ฒํธ
= grid-column: 3 / 4; ํ์ค๋ก!
/ ์ด 3๋ฒ๋ผ์ธ๋ถํฐ 4๋ฒ๋ผ์ธ๊น์ง ๋ณํฉ!/
= grid-column : 3 / span 1;
/ ์ด 3๋ฒ๋ผ์ธ๋ถํฐ 1์ค !!!!/
=> ๋จผ์ ์ปจํ ์ด๋์ display: grid; ๊ฑธ์ด์ฃผ๊ณ !!!
๐จcontainer์ ๊ฑธ์ด์ค๋ค
grid-templete-areas:
๐จ๊ฐ๊ฐ ๋ฐ์ค์ ๊ฑธ์ด์ค๋ค(์ด๋ฆ์ ํ๋๊ฑฐ์ผ)
grid-areas:
๐จcontainer์ ๊ฑธ์ด์ค๋ค
๐จ"nav nav nav"
"main main aside"
"main main aside"
"footer footer footer"
;
์ด๋ฐ์์ผ๋ก 4ํ 3์ด ์ ํ๋ฏ์ด ํ ์ด ์์๋๋ก ์์ฑํ๋ค!
๐จ๊ฐ๊ฐ ๋ฐ์ค์ ๊ฑธ์ด์ค๋ค(์ด๋ฆ์ ํ๋๊ฑฐ์ผ)
.container {
display: grid;
grid-template-rows: 100px 100px 100px 100px;
grid-template-columns: 100px 100px 100px;
grid-template-areas: /*4ํ 3์ด*/
"nav nav nav"
"main main aside"
"main main aside"
"footer footer footer"
;
}
#nav {
grid-area: nav;
background-color: red;
}
#main {
grid-area: main;
background-color: orange;
}
#aside {
grid-area: aside;
background-color: green;
}
#footer {
grid-area: footer;
background-color: blue;
}
<div class="container">
<div id="nav"></div>
<div id="main"></div> <div id="aside"></div>
<div id="footer"></div>
</div>
=> ๐ป
=> 100px 4ํ 100px 3์ด์ง๋ฆฌ๊ฐ ์์ฑ๋๊ณ ๊ฐ๊ฐ ์ด๋ฆ๋ฃ์ด์ค๋๋ก ๋ฐ์ค๊ฐ ๋ค์ด๊ฐ๋ค!
@keyframes์ ๊ฐ์ด
@media only screen and (max-width: 800px)
===> 80~90%๊ฐ ์ด๋ ๊ฒ ์ฌ์ฉ!
ํ๋๋ฐ๋ก ๋นจ๊ฐ๋ฐ์ค ํ๋ ๋ง๋ค์ด์ฃผ๊ณ ๋นจ๊ฐ๋ฐ์ค ์์ ๋ฉ์ธ,์๋ธ,๋ด์ฉ ๊ธ์ ๊ฐ๊ฐ ๋ฃ์ด์ค๋ค
.box {
width: 300px;
height: 300px;
background-color: red;
}
.main-title {
font-size: 30px;
font-weight: bold;
color: white;
}
.sub-title {
font-size: 20px;
color: lightgray;
}
.content {
font-size: 16px;
}
<div class="box">
<p class="main-title">๋ฉ์ธํ์ดํ</p>
<p class="sub-title">์๋ธํ์ดํ</p>
<p class="content">Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae voluptatum eveniet minus repellat recusandae consectetur mollitia quaerat, culpa inventore a omnis dolor, nemo enim est eos sequi placeat, blanditiis porro.</p>
</div>
/* ํ์ฌ ๊ฐ๋ก 495px */
@media only screen and (max-width: 310px) {
/* ๊ฐ๋ก๊ฐ 310px์ด ๋์๋ */
/* css ์คํ์ผ ์ ์ฉ */
.box {
width: 200px;
height: 200px;
}
.main-title { font-size: 24px; }
.sub-title { font-size: 14px; }
.content { font-size: 10px; }
}
@media only screen and (max-width: 260px) {
/* ๊ฐ๋ก๊ฐ 260px์ด ๋์๋ */
/* css ์คํ์ผ ์ ์ฉ */
.box {
width: 150px;
height: 150px;
background-color: orange;
}
.main-title { font-size: 18px; }
.sub-title { font-size: 10px; }
.content { font-size: 8px; }
}
=> css๋ถ๋ถ์ @media only screen and (max-width: 310px)์ @media only screen and (max-width: 260px) ๋ฅผ ์ถ๊ฐํด์ค๋ค!
๊ทธ๋ฆฌ๊ณ ๊ฐ๊ฐ ์์ ํฌ๊ธฐ๋ฅผ ์ค์์๋ (310px, 260px) ๋ค์ด๊ฐ ๋ด์ฉ์ .box{} ์ด๋ฐ์์ผ๋ก ๋ฃ์ด์ค๋ค
๊ทธ๋ฌ๋ฉด ๋ฐ์คํฌ๊ธฐ๋ฅผ ์ค์์๋๋ ํ
์คํธ๋ ๊ทธ์ ๋ง๊ฒ ์ค์ด๋ ๋ค!
=> ๐ป
.box {
width: 300px;
height: 300px;
background-color: red;
}
.main-title {
/* em rem : ์๋ ๋น์จ
em : ๋ถ๋ชจ์ font-size ๊ธฐ์ค ๋๋น ๋น์จ
rem : ๊ธฐ๋ณธ html font-size ๊ธฐ์ค ๋๋น ๋น์จ */
font-size: 1.8rem; /*๊ธฐ๋ณธ์ฌ์ด์ฆ์ 1.8๋ฐฐ*/
font-weight: bold;
color: white;
}
.sub-title {
font-size: 1.4rem; /*๊ธฐ๋ณธ์ฌ์ด์ฆ์ 1.6๋ฐฐ*/
color: lightgray;
}
.content {
font-size: 1rem; /*๊ธฐ๋ณธ์ฌ์ด์ฆ*/
}
/* ํ์ฌ ๊ฐ๋ก 495px */
@media only screen and (max-width: 310px) {
/* ๊ฐ๋ก๊ฐ 310px์ด ๋์๋ */
/* css ์คํ์ผ ์ ์ฉ */
.box {
width: 200px;
height: 200px;
}
html {
font-size: 10px; /*๊ธฐ๋ณธ์ฌ์ด์ฆ ์์ฒด๋ฅผ ์๊ฒ ํด๋์ผ๋ฉด ๊ทธ๋๋ก ์ฌ์ด์ฆ๊ฐ ์กฐ์ ์ด ๋๊ฒ ์ง ์์์!!!*/
}
}
@media only screen and (max-width: 260px) {
/* ๊ฐ๋ก๊ฐ 260px์ด ๋์๋ */
/* css ์คํ์ผ ์ ์ฉ */
.box {
width: 150px;
height: 150px;
background-color: orange;
}
html {
font-size: 8px;
}
}
=> ํฐํธ์ฌ์ด์ฆ๋ฅผ ๊ฐ๊ฐ ๊ธฐ๋ณธ์ฌ์ด์ฆ ๊ธฐ์ค ๋๋น๋น์จ(rem)๋ก ๋ง๋ค์ด์ค๋ค!
๊ทธ๋ผ 310px๋ก ์ค์ด๋ค์์๋, 260px๋ก ์ค์ด๋ค์์๋, ๊ธฐ๋ณธ์ฌ์ด์ฆ16px๋ณด๋ค ๊ธฐ๋ณธ์ฌ์ด์ฆ๋ฅผ ๋ ์๊ฒ ์ค์ ํด์ฃผ๋ฉด ๋๋น๋น์จ๋ก ๋ค์ด๊ฐ๊ธฐ๋๋ฌธ์ ์ผ์ผ์ด ๋ค ํฐํธ์ฌ์ด์ฆ๋ฅผ ์๋ฐ๊ฟ์ค๋ ๋๋ค!