让footer始终位于页面的最底部不随滚动而滚动

要让 footer 始终位于页面的最底部不随滚动而滚动,我们可以采用以下两种方法:

方法一:使用 flex 布局

HTML:

<body>
  <div class="container">
    <main>这里是主内容区域</main>
    <footer>这里是底部区域</footer>
  </div>
</body>

CSS:

html,
body {
  height: 100%;
}

.container {
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

main {
  flex: 1;
}

footer {
  flex-shrink: 0;
}

代码说明:

  • 首先将 htmlbody 的高度设置为 100%,以保证父元素(即 .container)的高度为整个浏览器的高度。
  • 同时,使用 display: flex.container 设置为 flex 布局,并设置 flex-direction: column,使得 .container 内部的子元素按照从上到下的方向排列。
  • mainflex 属性设置为 1,表示在 .container 中占据剩余的全部空间;
  • footerflex-shrink 属性设置为 0,表示在内容撑满父元素时,不会被缩小。

方法二:使用 position 和 margin

HTML:

<body>
  <div id="wrapper">
    <main>这里是主内容区域</main>
  </div>
  <footer>这里是底部区域</footer>
</body>

CSS:

html,
body {
  height: 100%;
}

#wrapper {
  min-height: 100%;
  margin-bottom: -60px; /* footer height */
  padding-bottom: 60px; /* footer height */
}

main {
  padding: 20px;
}

footer {
  height: 60px;
  line-height: 60px;
  text-align: center;
  background-color: #ccc;
  position: relative;
  margin-top: -60px; /* footer height */
  clear: both;
}

代码说明:

  • 首先将 htmlbody 的高度设置为 100%,以保证 #wrapper 的高度为整个浏览器的高度。
  • #wrapper 上设置 min-height100%,并设置 margin-bottompadding-bottom 的值都为 footer 的高度,以使 footer 不会挤压 #wrapper 的内容。
  • main 中设置一些内边距,以让内容与边界产生一定距离,使其看起来更美观。
  • footer 中设置高度、行高、文本对齐、背景颜色和位置。使用 position: relative 让 footer 悬浮在 wrapper 的末尾,再使用 margin-top 为 footer 预留空间。
  • 最后使用 clear: both 清除浮动。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:让footer始终位于页面的最底部不随滚动而滚动 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • CSS样式去除input和textarea点击选中框

    要去除input和textarea在点击时出现的选中框,可以通过CSS样式来实现。以下是实现的方法: 方法一:使用outline 可以使用CSS属性outline:none来清除input和textarea在点击时出现的选中框。 例如,我们可以设置一个class为text-input,然后用CSS样式去掉选中框: .text-input:focus { ou…

    css 2023年6月10日
    00
  • 浏览器默认样式(User Agent Stylesheet)的介绍与最佳处理方法

    浏览器默认样式 浏览器默认样式也称为用户代理样式表(User Agent Stylesheet),是浏览器默认加载的样式表。浏览器默认样式是为了方便用户操作网站而存在的。但同时,这些默认样式也可能会干扰到我们网站的设计和布局效果。 为什么需要处理浏览器默认样式 使用浏览器默认样式会导致网站在不同浏览器中显示的效果各异,造成网站的不可预测性。此外,不同浏览器的…

    css 2023年6月11日
    00
  • 详解css3中 text-fill-color属性

    详解 CSS3 中 text-fill-color 属性 CSS3 中,有一个 text-fill-color 属性可以用于设置文本填充色。它与 color 属性不同,color 属性仅设置文本颜色,而 text-fill-color 属性不仅可以设置文本颜色,还可以设置文本毛边的颜色。 语法 text-fill-color: color | auto; c…

    css 2023年6月9日
    00
  • 使用ElementUI修改el-tabs标签页组件样式

    使用ElementUI修改el-tabs标签页组件样式 ElementUI是一款基于Vue.js的UI框架,为Vue.js项目开发提供了一套完善的UI组件库。其中,el-tabs标签页组件是常用的组件之一,在使用中我们可能需要对其进行样式定制化,本文将介绍如何使用ElementUI修改el-tabs标签页组件样式。 步骤一:了解el-tabs标签页组件 在开…

    css 2023年6月9日
    00
  • 深入理解CSS定位与层叠

    深入理解CSS定位与层叠攻略 在CSS设计中,定位与层叠是非常重要的概念。本文将介绍定位和层叠的概念、使用方法以及应用技巧,同时提供两个示例说明。 定位 CSS定位是指通过使用position属性和对应的值来确定元素在文档流中的位置。定位属性有4种值: static relative absolute fixed static 默认的元素定位方式。元素在文档…

    css 2023年6月9日
    00
  • div图片垂直居中 如何使div中图片垂直居中

    要实现div中的图片垂直居中,我们可以采取以下三种方式: 方式一:使用flex布局 利用flex布局,我们可以很轻松地实现div中的图片垂直居中。 <style> .container { display: flex; align-items: center; /*指定垂直居中*/ justify-content: center; /*指定水平居…

    css 2023年6月10日
    00
  • YUI Compressor压缩JavaScript原理及微优化

    YUI Compressor 是一个流行的 JavaScript 压缩工具,它采用了一系列的微优化来减小代码的体积和提升性能。本文将详细讲解 YUI Compressor 压缩 JavaScript 的原理及微优化,从而让你更好地理解和应用它。 YUI Compressor 压缩 JavaScript 的原理 YUI Compressor 压缩 JavaSc…

    css 2023年6月10日
    00
  • jquery弹窗时禁止body滚动条滚动的例子

    请参考以下攻略,包含两个示例说明。 攻略 当使用jQuery弹出框或模态框时,为了确保用户集中精力处理弹出框中的信息,我们通常要禁止页面的滚动。 一种简单的解决方法是通过禁止body元素的滚动来实现。我们可以使用CSS和JavaScript来实现这一目的。 示例如下: 1. CSS方式: /* 禁止body元素滚动 */ body.modal-open { …

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部