728x90
레이아웃02
이번 레이아웃은 전체 영역이 들어간 구조이며, 실제 사이트에서 이런 구조를 많이 사용하며,
컨테이너를 만들어서 가운데 영역을 설정합니다.
float을 이용한 레이아웃
float 속성을 사용해 박스를 왼쪽(left) 또는 오른쪽(right)으로 "부유"시키는 레이아웃 기법 입니다
*{
margin: 0;
}
#wrap {
width: 1200px;
margin: 0 auto;
}
#body{
background-color: #E8F5E9;
}
#header{
width: 100%;
height: 100px;
background-color: #C8E6C9;
}
#nav{
width: 100%;
height: 100px;
background-color: #A5D6A7;
}
#aside{
width: 20%;
height: 780px;
background-color: #81C784;
float: left;
}
#section{
width: 60%;
height: 780px;
background-color: #66BB6A;
float: left;
}
#article{
width: 20%;
height: 780px;
background-color: #4CAF50;
float: left;
}
#footer{
width: 100%;
height: 100px;
background-color: #43A047;
clear: both;
}
@media(max-width: 1280px){
#wrap {
width: 96%;
margin: 0 auto;
}
}
@media(max-width: 768px){
#wrap {
width: 100%;
}
#aside{
width: 20%;
height: 780px;
float: left;
}
#section{
width: 80%;
height: 780px;
float: left;
}
#article{
width: 100%;
height: 150px;
}
}
@media(max-width: 480px){
#wrap {
width: 100%;
}
#aside{
width: 100%;
height: 200px;
}
#section{
width: 100%;
height: 430px;
}
#article{
width: 100%;
height: 150px;
}
}
결과 (HTML + CSS)
grid을 이용한 레이아웃
그리드(Grid)란 사전적으론 격자, 바둑판의 눈금을 의미하며 디자인에서는 디자인 영역을 일정하게 구획하는 것을 의미.
*{
margin: 0;
}
#wrap {
width: 1200px;
margin: 0 auto;
display: grid;
grid-template-areas:
"header header header"
"nav nav nav"
"aside article section"
"footer footer footer"
;
grid-template-columns: 25% 50% 25%; /* 각 columns(열) 넓이 */
grid-template-rows: 100px 100px 780px 100px; /* 각 rows(행) 높이 */
}
#body{
background-color: #E8F5E9;
}
#header{
grid-area: header;
background-color: #C8E6C9;
}
#nav{
grid-area: nav;
background-color: #A5D6A7;
}
#aside{
grid-area: aside;
background-color: #81C784;
float: left;
}
#section{
grid-area: section;
background-color: #66BB6A;
float: left;
}
#article{
grid-area: article;
background-color: #4CAF50;
float: left;
}
#footer{
grid-area: footer;
background-color: #43A047;
clear: both;
}
@media(max-width: 1280px){
#wrap {
width: 96%;
}
}
@media(max-width: 768px){
#wrap {
width: 100%;
margin: 0 auto;
display: grid;
grid-template-areas:
"header header"
"nav nav"
"aside section"
"article article"
"footer footer"
;
grid-template-columns: 25% 75%;
grid-template-rows: 100px 100px 780px 100px 100px;
}
}
@media(max-width: 480px){
#wrap {
width: 100%;
margin: 0 auto;
display: grid;
grid-template-areas:
"header header"
"nav nav"
"aside aside"
"section section"
"article article"
"footer footer"
;
grid-template-columns: 100%; /*각 요소의 넓이*/
grid-template-rows: 100px 100px 430px 100px 100px; /*각 요의 높이*/
}
}
결과 (HTML + CSS)
flex을 이용한 레이아웃
flex(플렉스)는 레이아웃 배치 전용 기능으로 고안되었는데 레이아웃을 만들 때 딱히 사용할게 없어서 쓰던 float나 inline-block 등을 이용한 기존 방식보다 훨씬 강력하고 편리한 기능들이 많다.
*{
margin: 0;
}
#wrap {
width: 1200px;
margin: 0 auto;
display: flex; /*정해진 틀 속 개체를 한줄로 자동정렬 */
flex-wrap: wrap; /*정해진 틀 속 개체를 각 속성에 맞춤*/
}
#body{
background-color: #E8F5E9;
}
#header{
width: 100%;
height: 100px;
background-color: #C8E6C9;
}
#nav{
width: 100%;
height: 100px;
background-color: #A5D6A7;
}
#aside{
width: 20%;
height: 780px;
background-color: #81C784;
}
#section{
width: 60%;
height: 780px;
background-color: #66BB6A;
}
#article{
width: 20%;
height: 780px;
background-color: #4CAF50;
}
#footer{
width: 100%;
height: 100px;
background-color: #43A047;
}
@media(max-width: 1280px){
#wrap {
width: 96%;
margin: 0 auto;
}
}
@media(max-width: 768px){
#wrap {
width: 100%;
}
#aside{
width: 20%;
height: 780px;
float: left;
}
#section{
width: 80%;
height: 780px;
float: left;
}
#article{
width: 100%;
height: 150px;
}
}
@media(max-width: 480px){
#wrap {
width: 100%;
}
#aside{
width: 100%;
height: 200px;
}
#section{
width: 100%;
height: 430px;
}
#article{
width: 100%;
height: 150px;
}
}
결과 (HTML + CSS)
728x90
반응형
'LAYOUT' 카테고리의 다른 글
레이아웃 배치 방법 05 : [float,grid,flex] (4) | 2022.07.31 |
---|---|
레이아웃 배치 방법 04 : [float,grid,flex] (6) | 2022.07.29 |
레이아웃 배치 방법 03 : [float,grid,flex] (4) | 2022.07.29 |
레이아웃 배치 방법 01 : [float,grid,flex] (3) | 2022.07.29 |
댓글