Существует несколько способов для того чтобы прижать (приклеить, прилепить, позиционировать, как вам удобно), footer к низу страницы в HTML-документе. В данной статье мы рассмотрим три из них. Какой подойдёт именно вам, будет зависеть от требований к макету и ваших предпочтений.
Содержание
Пример с CSS Flexbox + Шаблон
Прижмём футер, как следует) , к низу страницы с помощью использования CSS Flexbox.
HTML:
<body>
<div class="wrapper">
<!-- Заголовок -->
<header>
HEADER
</header>
<!-- Основной контент страницы -->
<main>
MAIN
</main>
<!-- Футер -->
<footer>
FOOTER
</footer>
</div>
</body>
CSS:
/* Обязательные стили для расположения footer внизу */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
.wrapper {
min-height: 100%;
display: flex;
flex-direction: column;
}
main {
flex: 1;
}
/* Дополнительные стили. Меняете на свои */
header {
background-color: bisque;
}
footer {
background-color: #a8bebe;
}
header, main, footer {
text-align: center;
font-size: 20px;
color: #000;
padding: 30px;
}
Готовый шаблон Flexbox -> Пример – footer прижат к низу CSS Flexbox.
Пример с CSS Grid + Шаблон
Прижимаем футер, к низу страницы с помощью CSS Grid
HTML:
<body>
<div class="wrapper">
<!-- Заголовок -->
<header>
HEADER
</header>
<!-- Основной контент страницы -->
<main>
MAIN
</main>
<!-- Футер -->
<footer>
FOOTER
</footer>
</div>
</body>
CSS:
/* Обязательные стили для расположения footer внизу */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
.wrapper {
display: grid;
grid-template-rows: auto 1fr auto;
min-height: 100%;
}
/* Дополнительные стили. Меняете на свои */
header {
background-color: bisque;
}
footer {
background-color: #a8bebe;
}
header, main, footer {
text-align: center;
font-size: 20px;
color: #000;
padding: 30px;
}
Готовый шаблон Grid -> Пример – footer прижат к низу CSS Grid.
Пример с использованием позиционирования
Прижимаем футер, к низу страницы с использованием позиционирования
HTML:
<body>
<!-- Заголовок -->
<header>
HEADER
</header>
<!-- Основной контент страницы -->
<main>
MAIN
</main>
<!-- Футер -->
<footer>
FOOTER
</footer>
</body>
CSS:
/* Обязательные стили для расположения footer внизу */
html, body {
height: 100%;
margin: 0;
padding: 0;
position: relative;
}
main {
min-height: calc(100% - 70px); /* 70px - это высота header, её и вычитаем */
}
footer {
position: absolute;
bottom: 0;
width: 100%;
}
/* Дополнительные стили. Меняете на свои */
header {
height: 70px;
background-color: bisque;
}
footer {
height: 70px;
background-color: #a8bebe;
}
header, main, footer {
text-align: center;
font-size: 20px;
color: #000;
}
Готовый шаблон с позиционированием -> Пример – footer прижат к низу с позиционированием.
Послесловие
На мой взгляд 1 и 2 способы являются наиболее оптимальными и просты в использовании. Так же рекомендую прописывать стили css, обращаясь через class, например <main class=’main’> и уже классу .main задавать стили.
