Добавление нижнего колонтитула, который всегда отображается в нижней части экрана?
Как я могу добавить нижний колонтитул, который всегда находится в нижней части экрана, даже если содержимое страницы очень мало
Например, скажем, у меня есть страница, на которой не так много отображено, поэтому нижний колонтитул становится в середине экрана. Могу ли я гарантировать, что если страница не содержит много содержимого, то нижний колонтитул просто находится в нижней части экрана?Обновить
Я просто хочу нижний колонтитул, который находится в нижней части экрана, когда есть недостаточно контента, чтобы заполнить весь экран (т. е. я не хочу, чтобы нижний колонтитул отображался в середине экрана), а затем, если есть достаточно контента, чтобы он просто опустился в нижней части страницы.
5 ответов:
Вы ищете "липкий нижний колонтитул", эта статья показывает некоторые из методов, которые вы можете использовать:
Вот версия flexbox: http://codepen.io/chriscoyier/pen/RRbKrL
HTML:
<body> <div class="content"> content </div> <footer class="footer"></footer> </body>
CSS:
html { height: 100%; } body { min-height: 100%; display: flex; flex-direction: column; } .content { flex: 1; }
Вот только CSS решение, не требуется jQuery. Сделайте минимальную высоту обертки 100% и расположите ее относительно, затем расположите нижний колонтитул абсолютно слева внизу:
#wrapper { min-height:100%; position:relative; } #content { padding-bottom:80px; } #footer { width:100%; height:80px; position:absolute; bottom:0; left:0; }
Вы захотите использовать элемент с фиксированной позицией, привязанный к нижней части страницы.
Скажем, вы используете div, чтобы охватить нижний колонтитул, вам понадобится такой css:
div#footer{ position: fixed; z-index: 1000000; overflow: hidden; bottom: 0px; left: 0px; height: 100px; width: 600px; }
Вы, вероятно, захотите обновить высоту и ширину, когда пользователь изменяет размер формы. Вероятно, вам также потребуется изменить ширину на pageload.
Вы также можете использовать sticky для позиции, как показано ниже:
.footer { position: sticky; position: -webkit-sticky; bottom: 0; }
Вы можете запустить этот код, чтобы увидеть, является ли этот тип фиксированным нижним колонтитулом находясь в поиске.
body { display: grid; min-height: 100vh; min-width: 100%; grid-template: "header main" "footer footer"; grid-template-columns: 100px 1fr; grid-template-rows: 1fr 50px; grid-gap: 10px; } body>div { background-color: rgba(0, 51, 204, 0.5); } .header { grid-area: header } .main-content { grid-area: main; text-align: center; } .footer { grid-area: footer; position: sticky; position: -webkit-sticky; bottom: 0; z-index: 10; }
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Footer Stay!</title> <link rel="stylesheet" type="text/css" href="../style/footer.css"> </head> <body> <div class="header"> Header </div> <div class="main-content">main content</div> <div class="footer">footer </div> </body> </html>