Bootstrap 是一个开源的前端框架,为开发响应式和移动端友好的网站提供了很好的支持。其中,粘页脚效果是 Bootstrap 中比较常见和广泛使用的一种效果,可以让网页内容相对固定,脚部内容吸附在页面底部,当页面滚动时固定在底部,不随滚动而
Bootstrap 是一个开源的前端框架,为开发响应式和移动端友好的网站提供了很好的支持。其中,粘页脚效果是 Bootstrap 中比较常见和广泛使用的一种效果,可以让网页内容相对固定,脚部内容吸附在页面底部,当页面滚动时固定在底部,不随滚动而消失。下面将详细讲解 Bootstrap 粘页脚效果的完整攻略。
原理
HTML 的页面元素的中有两个比较重要的属性值,一个是 offsetHeight 能够获取到元素自身高度加上上下边框的高度值,还有一个是 scrollTop 能够获取到元素滚动条相对顶部边框距离的高度。利用这两个属性值,可以判断页面内容是否过短,从而对 footer 进行定位。
步骤
1.确定页面最小高度:
通过设置 body 的最小高度等于视口高度,可以确保网页内容少时,footer 能够吸附在屏幕最下方。
示例代码:
body {
min-height: 100vh;
}
2.添加 .wrapper 包裹层:
为了将内容区域与 footer 区域分隔开,需要给内容区域添加一个包裹层,命名为 .wrapper。
示例代码:
<body>
<!-- 内容区域 -->
<div class="wrapper">
...
</div>
<!-- footer 区域 -->
<footer>
...
</footer>
</body>
3.设置 .wrapper 高度和边距:
为让 .wrapper 占据剩余高度,需要先将 footer 移开,增加 padding-bottom 的值,尽量设置成 footer 的高度,再将 .wrapper 的高度设置为 100% - footer 的高度。
示例代码:
footer {
position: relative;
margin-top: -100px;
/* 设置元素自身高度加上上下边框高度的值 */
height: 100px;
/* 设置 padding-bottom 为 100px,尽量设置成 footer 的高度 */
padding-bottom: 100px;
}
.wrapper {
/* 高度为 最小高度 + footer 高度 + padding-bottom 的和 */
min-height: calc(100vh + 100px + 100px);
/* 设置底部边距为 -footer 的高度 */
margin-bottom: -100px;
}
4.设置 footer 的位置:
通过在.css 文件中绑定 footer 的类名,设置 footer 的 position 为 absolute,并添加 bottom 和 left 值实现 footer 的吸附定位。
示例代码:
footer {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
/* 设置元素自身高度加上上下边框高度的值 */
height: 100px;
}
完整示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Bootstrap 粘页脚效果</title>
<style>
body {
min-height: 100vh;
}
footer {
position: relative;
margin-top: -100px;
height: 100px;
padding-bottom: 100px;
}
.wrapper {
min-height: calc(100vh + 100px + 100px);
margin-bottom: -100px;
}
footer {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100px;
}
</style>
</head>
<body>
<!-- 内容区域 -->
<div class="wrapper">
<h1>欢迎来到我的站点</h1>
<p>网站内容...</p>
</div>
<!-- footer 区域 -->
<footer>
<p>联系方式...</p>
</footer>
</body>
</html>
示例说明:
以上代码中,使用了.min-height、padding-bottom 和 margin-bottom 将 .wrapper 定义为一个占据全部高度的元素,同时让 footer 具有粘页脚的特性,footer 的吸附定位通过 position: absolute、bottom: 0、left: 0、width: 100% 实现。内容部分和 site-heading、site-content 等可以自由定义。
通过实际应用这个效果,可以达到页面固定布局结构,优化用户浏览体验的效果。
本文标题为:Bootstrap 粘页脚效果
- Ajax中post方法直接返回以0开头数字出错问题分析 2023-01-31
- php – 从数据库生成静态HTML文件 2023-10-26
- vscode操作vue项目的相关步骤 2023-10-08
- 如何使用require.context实现优雅的预加载 2023-08-08
- JS统计Flash被网友点击过的代码 2023-11-30
- 初学者必看的Ajax总结篇 2023-01-26
- 以前写的两个CSS树形菜单 2022-11-04
- 一文解决微信小程序button、input和image表单组件 2022-10-22
- 微信小程序获取头像和昵称的最新方法(直接用!) 2023-08-08
- 使用Nginx 反向代理来避免 ajax 跨域请求的方法 2023-01-20