纯CSS滚动动画

2023-11-24

我一直在寻找一种仅使用 CSS3 单击位于页面顶部的按钮时向下滚动的方法。

所以我找到了这个教程:http://tympanus.net/codrops/2012/06/12/css-only-responsive-layout-with-smooth-transitions/

Demo: http://tympanus.net/Tutorials/SmoothTransitionsResponsiveLayout/

但这对于我的需求来说有点太先进了,因为我只想让浏览器通过单击位于页面顶部的一个按钮来向下滚动,所以我想知道:是否可以在没有输入按钮的情况下进行这些 CSS 滚动,只需带有锚标签?

HTML 看起来像这样:<a href="#" class="button">Learn more</a>

我已经有一些 CSS,需要在单击按钮时触发:

/* Button animation tryout. */
.animate {
    animation: moveDown 0.6s ease-in-out 0.2s backwards;
}
@keyframes moveDown{
    0% { 
        transform: translateY(-40px); 
        opacity: 0;
    }
    100% { 
        transform: translateY(0px);  
        opacity: 1;
    }
}

使用锚链接和scroll-behavior财产 (MDN 参考) 对于滚动容器:

scroll-behavior: smooth;

浏览器支持:Firefox 36+、Chrome 61+(因此还有 Edge 79+)、Safari 15.4+、Opera 48+。

Internet Explorer、非 Chromium Edge 和旧版本 Safari(某些用户仍在使用)do not支持scroll-behavior并简单地“跳转”到链接目标(优雅降级)。

用法示例:

<head>
  <style type="text/css">
    html {
      scroll-behavior: smooth;
    }
  </style>
</head>
<body id="body">
  <a href="#foo">Go to foo!</a>
  
  <!-- Some content -->
  
  <div id="foo">That's foo.</div>
  <a href="#body">Back to top</a>
</body>

这是一个Fiddle.

这里还有一个Fiddle具有水平和垂直滚动功能。

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

纯CSS滚动动画 的相关文章

  • Bootstrap 按钮的检查状态

    我想在 Bootstrap 3 0 2 中设置组复选框的选中状态 docs http getbootstrap com javascript buttons html div class btn group div
  • Horizo​​ntalScrollView 将 GridView 缩小为小行

    当我将 Horizo ntalScrollView 放在 GridView 周围时 GridView 会被压缩到左侧的一个小列中 Gridview 的垂直滚动条甚至出现在左侧 Horizo ntalScrollView 的宽度设置为 fil
  • 动画和过渡的组合无法正常工作

    我一直在尝试添加一些基本的 CSS3 动画 目标是在按钮的单击事件上切换类 并根据添加的类对 div 进行动画处理 该代码对于 Firefox 中切换的第一次迭代完美运行 但对于 Chrome 等其他浏览器以及 Firefox 中的下一次迭
  • 设置绝对仓位和保证金

    我想设置一个元素的position to absolute并有一个margin bottom 但似乎margin bottom没有效果 HTML div div CSS container border 1px solid red posi
  • Rails 上的 SASS 无效 CSS 错误

    我正在尝试使用http startbootstrap com stylish portfolio http startbootstrap com stylish portfolio但是 在我的 Rails 应用程序中 我在 vintage
  • 如何让 ExtJS ComboBox 与文本一起显示?

    我想让以下内容显示在一行中 我尝试过使用样式浮动和显示 Show this input
  • 如何使弹出窗口溢出:在溢出内可见:自动上下文

    我有一个 div 列表 如果超过父框 overflow x 应该滚动 并且在悬停时 我想看到一个弹出窗口 我的问题是 如果我将鼠标悬停在任何子 div 上 弹出窗口将被考虑用于溢出计算 但我只想让它在所有内容之上可见 而不是使其扩展滚动区域
  • Firefox -moz-border-radius 不会裁剪图像?

    如果设置了图像的边框半径 有谁知道如何让 Firefox 裁剪角 它包含的元素可以正常工作 但我会发现丑陋的角落伸出来 有什么方法可以解决此问题 而无需将图像设置为背景图像或在将其放在网站上之前对其进行处理吗 解决方法 将图像设置为容器元素
  • JQuery 设置动态最大宽度

    我不太擅长 jQuery 因此完整的代码解决方案将是理想的选择 该函数将 获取浏览器屏幕的 70 宽度 将该宽度转换为其相应的 px 值 设置最大宽度 mainContainer使用从转换 计算中获得的值 这是我要设置的容器的 CSS 样式
  • IE10 中的弹性盒

    我试图让弹性框在 IE10 中工作 但它不起作用 Safari Chrome 和 Firefox 工作正常 但 IE10 不工作 有人知道答案吗 代码笔 http codepen io anon pen vcEGH http codepen
  • Sass mixin 将背景透明度恢复到 IE8

    我是 Sass 新手 并为此苦苦挣扎 我无法在两者中渲染颜色hex 对于 IE 和rgba 每一个小片段都让我感到沮丧 因为我还没有掌握语法 而且 Sass 的 Google 结果仍然很少 这是混合 mixin transparent he
  • 使用最后一个子选择器减少 CSS

    我在用less并试图得到last输入有一个边距底部 of 10px 这是我所拥有的 但它不起作用 并且没有在最后一个输入上应用 margin bottom 有什么想法吗 input margin bottom 0px last child
  • 如何使用CSS缩进多级select optgroup?

    只是试图通过嵌套深度缩进 optgroup 块 我尝试了一般margin left规则 嵌套元素然后尝试应用相同的规则 尝试过padding left 这样的缩进可能吗 看起来很简单 P 在下面的示例中 标记为 client2 a 的 op
  • 如何居中对齐数据表标题

    我是数据表新手 当我制作表格标题时 它总是左对齐 如何将标题设置为居中对齐 我已阅读 datatables net manual styling classes 和 datatables net reference option colum
  • 重新加载页面时删除哈希值?

    我使用哈希来切换我的图像滑块 当我重新加载页面并且哈希值设置为 e h 3 没有图片 当图库在几秒钟后自动滑动时 它显示下一个 所以几秒钟内什么也没有 有没有办法在加载页面时检查哈希并将其删除 我只想关心那些用散列为页面添加书签的人 问候
  • Webkit 是否有 CSS3 网格布局的有效实现?

    CSS 网格布局 编辑草案 2011 年 11 月 21 日 http dev w3 org csswg css3 grid align 我正在制作一个原型 该原型将在选定的设备和浏览器上向客户展示 目前我并不担心跨浏览器兼容性 IE10开
  • 如何使用CSS缩放图像以填充div并保持纵横比?

    我想用一个 div 填充img 保持纵横比并根据需要拉伸宽度或高度以适应 div style width 80px height 80px img src div 我怎样才能实现它 如果图像不是二次方的 则必须将其 放大 并根据哪一侧较大而
  • Chrome 版 Firebug Lite 会破坏悬停效果和鼠标悬停事件

    我有一个奇怪的问题 使用时适用于 Chrome 的 Firebug Lite https chrome google com webstore detail firebug lite for google c bmagokdooijbeeh
  • WordPress 子主题包括包含文件

    我在一家WordPress使用 AMPPS 作为本地主机在我的本地计算机上进行设置 使用 Delta 主题 我创建了一个子主题 delta2 child 初始设置效果很好 但是 我需要更改包含文件夹中名为 home slider php 的
  • 将引导程序弹出框保留在视口内

    我正在尝试使用带有按钮的侧边栏创建一个菜单 每个按钮都有一个指定的包含相关数据的弹出窗口 不幸的是 其中一个弹出窗口可能包含任意数量的行 并且在某些情况下它可能部分位于视口之外 See http jsfiddle net bfd9f 1 h

随机推荐

  • Android protobuf nano 文档

    我正在尝试减少 Google protobuf 生成的方法数量 替代方案之一是使用 protobuf nano 但是我没有找到有关如何使用它的文档 除了包链接 我找不到任何关于如何使用 nano 从 proto 文件生成 java 文件的信
  • T-sql:如何执行优化分页?

    我编写了以下代码 它工作正常 但如果表包含一百万条记录 则需要 3 秒才能完成 有没有办法优化以下代码 DBCC DROPCLEANBUFFERS DBCC FREEPROCCACHE DECLARE Page Size int DECLA
  • 我可以使用 EFI 在本地文件系统上写入吗

    我正在开发这个项目 以便在操作系统通过 EFI 应用程序启动后立即将文件写入本地文件系统 我需要知道是否可能 如果是的话 请指导我一点 谢谢 好吧 我会好好提醒你的 首先枚举系统中的所有 FS 协议 EFI BOOT SERVICES bs
  • 注解驱动的依赖注入,可处理不同的环境

    我认为许多专业人士不转向注解驱动的依赖注入的主要原因是它不支持开发 测试 生产环境之间的切换 在许多情况下 出于开发目的 您不仅使用不同的服务 及其连接 有时还需要模拟它们或创建虚拟实例 昨天我想出了一个带有Spring注释的解决方案 Va
  • Android 插页式广告添加测试设备?

    您可以轻松添加带有横幅广告的测试设备 这样您就不会因意外点击它们而被禁止 但是我找不到如何将测试设备添加到插页式广告中 我认为如果您不小心点击它们 您也可能会被禁止 您可以向其中添加测试设备吗 如果可以 如何添加 我在官方谷歌指南和 SA
  • 什么是SQL注入? [复制]

    这个问题在这里已经有答案了 有人可以解释一下SQL注入吗 它是如何导致漏洞的 SQL注入点到底在哪里呢 有人可以解释一下SQL注入吗 当您将某些内容插入 SQL 查询字符串时 就会发生 SQL 注入 结果会以您不希望的方式修改查询的语法 它
  • Azure AD - 令牌中缺少角色声明

    我已通过 Azure Active Directory AAD 设置身份验证 一切正常 我收到了访问和刷新令牌 我已经阅读了有关应用程序角色的信息 并且我想使用它们 为简单起见 我们假设我想要拥有管理员和用户角色 我已遵循官方文档 缺少最后
  • XML 解析太慢!

    我编写了一个 Java 应用程序来使用 XML 与 Web 应用程序进行通信 部署后 我发现解析 Web 应用程序生成的 XML 需要很长时间 例如 登录大约需要2分钟 登录信息包含在 url 中 Web 应用程序进行处理并使用返回的 XM
  • 使用 Spring MVC 保留 的值

    我有一个包含两个输入的表单 一个字符串 一个文件
  • 测试 Windows Phone 7 中的连接问题(使用模拟器)

    Windows Phone 7 模拟器中有没有办法关闭网络连接 无需拔下电缆并关闭笔记本电脑上的 Wi Fi 我想在没有物理设备或在模拟器或 Windows Phone 7 SDK 工具之外执行任何物理操作的情况下测试网络连接的下降 作为物
  • CanBuildFrom 如何知道一个类型是否可以从另一个类型构建?

    我读了官方文档但我仍然无法理解它是如何工作的 例如 class A type Self def seqToSet T lt A seq Seq T implicit cbf CanBuildFrom Seq T T Self Set T 上
  • 如何指定适用于英语以外的欧洲语言的正则表达式字符范围?

    我正在使用 Ruby 的正则表达式引擎 我需要编写一个正则表达式来执行此操作 WIKI WORD b a z w A Z a z A Z w b 但除英语外还可以使用其他欧洲语言 我不认为字符范围 a z 会涵盖德语等中的小写字母 WIKI
  • Maven Jacoco 配置 - 从报告中排除类/包不起作用

    我有一个 Maven 多模块项目 我正在使用 jacoco maven 进行代码覆盖率报告 有些类不应该报告 因为它们是 Spring 配置 我对它们不感兴趣 我已声明 maven jacoco 插件如下
  • Android - 带有自定义 BaseAdapter 的 Gridview,创建 onclicklistener [重复]

    这个问题在这里已经有答案了 我创建了一个显示字母表字母的网格视图 我使用自定义 BaseAdapter 用字符串数组填充 gridview 我想要做的是能够获取单击单元格的值 字母 为了验证它是否有效 我创建了一个 TextView 并且我
  • PHPMailer 在发送时挂起

    我已经在内部几个人使用的桌面上使用 WAMPSERVER 成功设置了一个 Web 应用程序 这使用 PHPMailer 到内部 SMTP 服务器 无需加密或身份验证 并且它有效 该桌面崩溃了 我已迁移到 新 桌面 我有一个 SVN 设置 所
  • 如何部署具有多个区域的 asp.net mvc 4 应用程序

    我跟着this制作可插入式 asp net mvc 4 应用程序的文章 但在部署应用程序时遇到问题 在我的解决方案中MainProj是主项目 所有其他项目都位于区域文件夹中 每个项目都有其模型 视图和控制器 我已经给出了所有子项目 区域文件
  • 在vb.net中,如果我使用AddHandler,我是否必须使用RemoveHandler?

    如果我总是需要在使用 AddHandler 之后调用 RemoveHandler 那么最好的位置在哪里 我搜索了几个类似的问题如下 但不太明白 何时何地调用 VB NET 中的RemoveHandler AddHandler RemoveH
  • 与 PHP strip_tags 等效的 MySQL 查询是什么?

    我有一个大型数据库 其中包含具有以下内容的记录 a 其中的标签 我想删除它们 当然 有一种方法 我创建一个 PHP 脚本 选择全部 使用strip tags并更新数据库 但这需要很长时间 那么如何使用简单 或复杂 的 MySQL 查询来做到
  • 获取当前正在执行的方法的名称

    Java 有没有办法获取当前正在执行的方法的名称 从技术上讲 这将起作用 String name new Object getClass getEnclosingMethod getName 但是 将在编译时创建一个新的匿名内部类 例如Yo
  • 纯CSS滚动动画

    我一直在寻找一种仅使用 CSS3 单击位于页面顶部的按钮时向下滚动的方法 所以我找到了这个教程 http tympanus net codrops 2012 06 12 css only responsive layout with smo