页面滚动时停留在页面底部的粘性 div

2024-01-27

当有人向下滚动我们的页面时,在某个时刻,会出现一个 div(带有 cta 按钮)。我想要实现的是,从那一刻起,这个 div 变得“粘性”并随着视口向下滚动,在视口的底部,如果网站正在向下滚动。这个 div 基本上是(但不是真正的)一种粘性页脚,因为网站的其余部分不断在其后面滚动。

现在,我可以毫无问题地将 div 粘在页面顶部,但这不是我想要的。它需要粘在底部。

我使用 bootstrap 3 和 affix。 我已经快到了,但还没有完全实现。 下面带有 css 的 javascript 几乎可以完成这项工作,但是当 div 在视口内可见时,带有 id cta 的 div 就会向下跳到视口。从那一刻起,它可以很好地向下滚动,视口位于底部,但从上到下的跳转需要消失:)

<div id="affixwrapper">
//stuff thats being wrapped above the div with id cta.
</div>

<div id="cta" data-spy="affix">
  <div class="section section-success text-center">
    <div class="container">
      <div class="row">
        <div class="col-md-12">
          <a class="btn ban-default">Button text</a>
        </div>
      </div>
    </div>
  </div>
</div>

<script>
$('#cta').affix({
  offset: {
    top: function() { return $('#affixwrapper').height(); }
  }
});
</script>

<style>
.affix {
bottom: 0px;
position: fixed;
width: 100%;
background-color: white;
z-index: 777;
}
</style>

CSS 中有一个名为“粘性”的位置值,不需要 jQuery :)

这是一个代码片段(参见demo http://bokand.github.io/sticky2.html)

<!DOCTYPE html>
<style>
  body {
    height: 600vh;
    margin: 0;
  }
  #sticky {
    position: sticky;
    top: 90vh;
    left: 0px;
    width: 100%;
    height: 10vh;
    background-color: red;
  }
  #space {
    height: 200vh;
  }
  #container {
    height: 200vh;
  }
</style>

<div id="space"></div>
<div id="sticky"></div>

那个“粘性”<div>将相对定位(即定位为没有position: sticky) 就在“空格”之后<div>直到用户滚动时到达指定的偏移量top, 那是90vh。之后,它会变成position: fixed在那个位置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

页面滚动时停留在页面底部的粘性 div 的相关文章

随机推荐

  • d3.js v4,如何在鼠标悬停时有一条线跟随鼠标,同时也有一个圆圈跟随路径?

    这是我的 js 小提琴 https jsfiddle net DerNalia 3wzLv9yg 1 https jsfiddle net DerNalia 3wzLv9yg 1 我一直在尝试从这里解释代码 带有鼠标悬停工具提示的多系列折线
  • Bootstrap打印CSS去除背景颜色

    当我使用引导程序时 当我尝试打印页面时 它会从所有内容中删除背景颜色 我网站上的几乎所有内容都使用引导类 因此我想避免在引导程序之外使用大量手动 CSS 我发现 bootstrap 使用 media print删除背景颜色 我也使用引导主题
  • std::integral_constant 的否定

    抱歉问了这么简单的问题 但我无法轻松找到答案 谷歌没有说任何关于 C 否定积分常量 和类似查询的有趣内容 C 11 中是否有任何特征使得std true type from std false type反之亦然 换句话说 我想要一些更具可读
  • 使用模拟获取所有日志输出

    我想用模拟获取所有日志输出 我搜索过 但是 只找到了显式模拟logging info或logging warn的方法 我需要所有输出 无论设置的日志记录级别如何 def test foo def my log logs append wit
  • Nginx 重定向到错误的虚拟主机

    我的一个 nginx conf 文件中有大约 1300 个虚拟主机 所有这些都具有以下布局 它们在虚拟主机文件中依次列出 现在我的问题是有时我的浏览器将 site2 重定向到 site1 由于某种原因 域名不匹配 看起来 nginx 总是重
  • 如何使用 Python IMAP 从 Gmail 邮件中删除“来自无人”和“内容类型”?

    尽管我在从很多网站进行大量搜索后完成了大部分工作 但我仍然无法获得我想要的正确输出 Code import imaplib import smtplib import email mail imaplib IMAP4 SSL imap gm
  • 使用自定义任务工厂创建但不启动任务?

    我希望能够在不启动任务的情况下创建任务 类似于运行var a new Task a Start 但有一家定制工厂 工厂提供StartNew 但我找不到分离这两个动作的方法 这可能吗 A TaskFactory基本上是两组默认选项 创建和继续
  • 保存 H2o 数据帧

    我正在使用 10GB 的训练数据框 我使用 H2o 库来加快计算速度 每次加载数据集时 我都应该将数据帧转换为 H2o 对象 这需要花费很多时间 有没有办法存储转换后的 H2o 对象 这样我每次在构建模型时都可以跳过 as H2o trai
  • SwiftUI:清除模态状态或重新初始化

    我有一个 SwiftUI 模式 我想清除其状态或重新初始化 考虑到此模式可以打开可能具有某种状态的其他模式 重新初始化将是首选 这是一个简单的例子 import SwiftUI struct OtherView View State var
  • “fast_abs_path”在什么方面“危险,但可能更快”?

    The Cwd 模块的文档 http perldoc perl org Cwd html abs path and friends指出fast abs path是 更危险 但可能更快的版本abs path 它在什么方面有危险 在什么情况下它
  • 如何在具有不同类型值的 Map 中使用泛型

    我有一个通用的Command界面 public interface Command
  • 作为开发人员,您对普通 Windows 安装进行了哪些更改?

    当我获得一个普通的 Windows 系统时 我会更改很多内容以使其对开发人员更加友好 其中一些事情我每次都会记得 而另一些事情我只是偶尔做 例子 显示所有文件类型的扩展名 使隐藏文件和系统文件可见 关闭 Windows Defender 我
  • C# 重写字典ContainsKey

    我只是找不到任何合适的代码来完成我需要的事情 我在用着Dict ContainsKey但由于我总是创建我需要查找的密钥 因此 ContainsKey 总是为 false 因为 hashKey 不同 并且我创建了我想要一直检查的密钥 有人可以
  • 基于另一个“True”/“False”列表选择列表的元素

    我有两个长度相同的列表 第一个包含字符串 第二个 字符串可以是 True or False 如果第二个列表的第 n 个元素是 True 我想将第一个列表的第 n 个元素附加到另一个列表 所以如果我有 List1 sth1 sth2 sth3
  • jQuery prevUntil() 包括开始选择器和结束选择器

    我想为 prevUntil 或 nextUntil jQuery 选择器方法选择开始和结束选择器 如果我现在实现这些方法 它会获取给定的两个选择器之间的所有内容 i e p prevUntil h1 不会包含 p 和 h1 元素 仅包含它们
  • emacs 终端模式:如何有效地复制和粘贴

    我很难让这个 emacs nw 在终端模式 emacs nw 下有效工作 一些设置信息 工作服务器通过 SSH 连接 emacs 运行在服务器上 通常我使用 SSH 和 emacs nw 进行连接来处理我的文件 emacs 配置取自 htt
  • 使用 IdentityServer4 和 Oidc 客户端时会话超时导致静默更新停止工作

    我目前正在开发一个 Angular4 SPA 应用程序 该应用程序使用 IdentityServer4 作为身份验证服务连接到 NET CORE 1 1 WebApi 在 Angular 方面 我们使用 Damien Bod 1 2 1 中
  • 将多个视频合并为一个

    我有三个视频 用摄像机拍摄的讲座 讲座中使用的计算机的桌面捕获视频 和白板的视频 我想创建一个最终视频 其中这三个组件占据屏幕的特定区域 是否有开源软件可以让我做到这一点 mencoder ffmpeg virtualdub 你推荐哪一个
  • Xcode 7 无法从框架中找到头文件

    我正在尝试将 PassSlot 添加到我的项目中 但它说找不到 h 文件 我从这里正确地遵循了一切 https github com passslot passslot ios sdk https github com passslot p
  • 页面滚动时停留在页面底部的粘性 div

    当有人向下滚动我们的页面时 在某个时刻 会出现一个 div 带有 cta 按钮 我想要实现的是 从那一刻起 这个 div 变得 粘性 并随着视口向下滚动 在视口的底部 如果网站正在向下滚动 这个 div 基本上是 但不是真正的 一种粘性页脚