CSS-CODE
body{
margin: 0 auto;
width: 800px;
height: 100vh; /*a*/
display: flex; /*b*/
flex-direction: column; /*c*/
}
/*a-内容が100vh以上に膨らむと
入れないので最小でも100に設定する*/
/*b-横並びにする親要素にしたら子要素にも*/
/*c-親要素は全体的に縦にする*/
header{
height: 110px;
}
div{
display: flex; /*d*/
flex: 1; /*e*/
}
/*d-横並びにする子要素にしたら
親要素にもしないと効かない*/
/*e-縦にいっぱいいっぱい*/
main{
flex: 1;
}
/*横にいっぱいいっぱい*/
nav{
width: 150px;
}
aside{
width: 299px;
}
footer{
height: 50px;
}
@media screen and (max-width: 900px){
/*900以下でcss適用 */
body,nav,aside{
width: 100%;
}
/*横幅を100に書換る*/
div{
flex-direction: column;
}
/*縦にする*/
main{
order: -1;
}
/*表示の順先*/
}