반응형
레이아웃03
이번 레이아웃은 사이드 1영역과 그 옆으로 3개의 영역이 나누어진 레이아웃입니다.
float : clearfix를 이용한 레이아웃
부모 요소가 다시 자식 요소를 감쌀 수 있게 float을 초기화(clear)하여 버그를 고쳐주는(fix) 코드입니다.
* {
margin: 0;
}
body {
background-color: #E1F5FE;
}
#wrap {
width: 1200px;
margin: 0 auto;
}
#header {
width: 1200px;
height: 100px;
background-color: #B3E5FC;
}
#nav {
width: 1200px;
height: 100px;
background-color: #81D4FA;
}
#main {
width: 1200px;
}
#aside {
width: 300px;
height: 780px;
background-color: #4FC3F7;
float: left;
}
#section_01 {
width: 900px;
height: 260px;
background-color: #29B6F6;
float: left;
}
#section_02 {
width: 900px;
height: 260px;
background-color: #03A9F4;
float: left;
}
#section_03 {
width: 900px;
height: 260px;
background-color: #039BE5;
float: left;
}
#footer {
width: 1200px;
height: 100px;
background-color: #0288D1;
}
/* clearfix */
.clearfix::before,
.clearfix::after {
content: '';
display: block;
line-height: 0;
}
.clearfix::after {
clear: both;
}
flex를 이용한 레이아웃
* {
margin: 0;
}
body {
background-color: #E1F5FE;
}
#wrap {
width: 1200px;
margin: 0 auto;
}
#header {
width: 100%;
height: 100px;
background-color: #B3E5FC;
}
#nav {
width: 100%;
height: 100px;
background-color: #81D4FA;
}
#main {
display: flex;
flex-wrap: wrap;
flex-direction: column;
height: 780px;
}
#aside {
width: 25%;
height: 780px;
background-color: #4FC3F7;
}
#section_01 {
width: 75%;
height: 260px;
background-color: #29B6F6;
}
#section_02 {
width: 75%;
height: 260px;
background-color: #03A9F4;
}
#section_03 {
width: 75%;
height: 260px;
background-color: #039BE5;
}
#footer {
width: 100%;
height: 100px;
background-color: #0288D1;
}
flex를 이용한 레이아웃 : 반응형 적용
* {
margin: 0;
}
body {
background-color: #E1F5FE;
}
#wrap {
width: 1200px;
margin: 0 auto;
}
#header {
height: 100px;
background-color: #B3E5FC;
}
#nav {
height: 100px;
background-color: #81D4FA;
}
#main {
display: grid;
grid-template-areas:
"aside section1"
"aside section2"
"aside section3";
grid-template-columns: 25% 75%;
grid-template-rows: 260px 260px 260px;
}
#aside {
grid-area: aside;
background-color: #4FC3F7;
}
#section1 {
grid-area: section1;
background-color: #29B6F6;
}
#section2 {
grid-area: section2;
background-color: #03A9F4;
}
#section3 {
grid-area: section3;
background-color: #039BE5;
}
#footer {
height: 100px;
background-color: #0288D1;
}
@media (max-width:1280px) {
#wrap {
width: 96%;
}
#main {
grid-template-areas:
"aside section1 section1"
"aside section2 section3";
grid-template-columns: 25% 37.5% 37.5%;
grid-template-rows: 260px 520px;
}
}
@media (max-width:768px) {
#wrap {
width: 100%;
}
#main {
grid-template-areas:
"aside section1"
"aside section2";
grid-template-columns: 32.5% 67.5%;
grid-template-rows: 390px 390px;
}
#section3 {
display: none;
}
}
@media (max-width:480px) {
#main {
grid-template-areas:
"aside"
"section1"
"section2";
grid-template-columns: 100%;
grid-template-rows: 200px 430px 150px;
}
}
댓글