body{ margin: 0; min-height: 100vh; display: flex; flex-direction: column; } header{ height: 150px; text-align: center; border: 1px solid; font-size: 30px; line-height: 150px; background-color: #cce5ff; } div{ display: flex; flex: 1; background-color: #d6ffff; } main{ flex: 1; border: 1px solid; } nav{ width: 200px; border: 1px solid; } footer{ height: 100px; border: 1px solid; background-color: #d6ffff; } h1{ text-align: center; } li.now{ text-decoration: underline; }