”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 揭秘KPR Verse Footer Effect背后的神奇效果

揭秘KPR Verse Footer Effect背后的神奇效果

发布于2025-01-06
浏览:827

Unraveling the magical effect Behind the KPR Verse Footer Effect
当我滚动浏览 KPR-verse 网站时,我注意到底部有这个很酷的效果。每当我看到这样的东西时,我总是想重现它。我的过程很简单:我首先尝试复制效果,然后创建一个博客来解释它是如何完成的,旨在将复杂的设计分解为易于理解的步骤。

起初,我常常怀疑自己是否能成功,但经过深思熟虑,我通常会找到一种方法将设计分解成碎片。通过连接这些部分,我设法达到了效果。废话说得够多了——让我们深入探讨如何自己制作它!

分解 KPR 诗句页脚效果

在网站末尾,您会在背景中找到 KPR 横幅。乍一看似乎有点复杂,但其实没那么复杂。

Unraveling the magical effect Behind the KPR Verse Footer Effect

首先,创建一个带有 .container 类的 div。这将是我们教程的根元素。

Unraveling the magical effect Behind the KPR Verse Footer Effect

接下来,将 .container 分为两部分:.subcontainer-wrapper 和 footer。页脚元素将包含 KPR 横幅。

Unraveling the magical effect Behind the KPR Verse Footer Effect

现在,将 .subcontainer-wrapper 进一步分为两部分。上半部分包含我们网站的所有内容,而下半部分留空,没有背景——基本上不可见,但它仍然具有视口的宽度和高度。下半部分至关重要,因为它使我们能够看到页脚。

到目前为止,所有元素都处于正常的 HTML 流程中,即从上到下。现在,我们需要通过将页脚放在后面并将 .subcontainer-wrapper 放在前面来打破这个顺序。为此,我们将 .subcontainer-wrapper 设置为相对于其父 .container 的绝对位置。这将从正常的 DOM 流中删除 .subcontainer-wrapper。

Unraveling the magical effect Behind the KPR Verse Footer Effect

这就是我们设置效果所需的全部内容。现在,用内容填充 .subcontainer-wrapper 的上部,但将下部(不可见的 div)留空。另外,将内容添加到页脚。

添加内容后,它应该看起来像这样。

Unraveling the magical effect Behind the KPR Verse Footer Effect

上部隐藏了背景,当你向下滚动时,当可见内容结束时,不可见部分会显示页脚。瞧!就是这样——简单又容易。

Unraveling the magical effect Behind the KPR Verse Footer Effect

_感谢您的关注!我希望您发现本指南很有帮助且易于理解。保持好奇心并不断探索!

原文:KPR-verse

演示站点:演示链接,在本次演示中,我使用了 Google I/O 站点 (https://io.google/2024/) 并对其进行了调整以展示类似的概念。

源代码:Github Link_

版本声明 本文转载于:https://dev.to/bishalpahari/unraveling-the-magical-effect-behind-the-kpr-verse-footer-effect-42bm?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 在PHP脚本和浏览器中如何有效删除Cookie?
    在PHP脚本和浏览器中如何有效删除Cookie?
    有效地删除cookies 有效地删除cookie而不是简单地解开它,请按照以下步骤操作: ,您可以拆开cookie变量以从PHP脚本中删除它。但是,这仅将cookie从脚本本身中删除。 2。将到期时间设置为过去:到期,您可以将其到期时间设置为过去的日期。可以使用以下代码完成此操作:在此代码中,-1...
    编程 发布于2025-04-17
  • 为什么HTML无法打印页码及解决方案
    为什么HTML无法打印页码及解决方案
    无法在html页面上打印页码? @page规则在@Media内部和外部都无济于事。 HTML:Customization:@page { margin: 10%; @top-center { font-family: sans-serif; font-weight: bo...
    编程 发布于2025-04-17
  • Java中Lambda表达式为何需要“final”或“有效final”变量?
    Java中Lambda表达式为何需要“final”或“有效final”变量?
    Lambda Expressions Require "Final" or "Effectively Final" VariablesThe error message "Variable used in lambda expression shou...
    编程 发布于2025-04-17
  • PHP与C++函数重载处理的区别
    PHP与C++函数重载处理的区别
    作为经验丰富的C开发人员脱离谜题,您可能会遇到功能超载的概念。这个概念虽然在C中普遍,但在PHP中构成了独特的挑战。让我们深入研究PHP功能过载的复杂性,并探索其提供的可能性。在PHP中理解php的方法在PHP中,函数超载的概念(如C等语言)不存在。函数签名仅由其名称定义,而与他们的参数列表无关。...
    编程 发布于2025-04-17
  • 预编译查询与转义函数:为何预编译语句更安全?
    预编译查询与转义函数:为何预编译语句更安全?
    使用准备好的参数化查询来增强安全性:为什么它们在数据库查询的领域中超越逃生功能在数据库查询的领域,对SQL Intection volnerabilities的攻击的重要性,无法超越SQL Incection vulnerabilities。一个常见的问题是:为什么准备准备的参数化查询比其逃生功能...
    编程 发布于2025-04-17
  • C#应用如何通过资源文件实现本地化?
    C#应用如何通过资源文件实现本地化?
    C# 应用本地化:实用指南 本地化对于构建面向不同语言和文化用户的应用程序至关重要。在 C# 中,本地化过程很简单,只需使用资源文件 (.resx) 并管理线程文化设置即可。以下是如何开始的分步指南: 添加资源文件: 右键单击项目的“属性”,选择“添加 -> 新建项...” ,然后从“Visual...
    编程 发布于2025-04-17
  • 如何解决AppEngine中“无法猜测文件类型,使用application/octet-stream...”错误?
    如何解决AppEngine中“无法猜测文件类型,使用application/octet-stream...”错误?
    appEngine静态文件mime type override ,静态文件处理程序有时可以覆盖正确的mime类型,在错误消息中导致错误消息:“无法猜测mimeType for for file for file for [File]。 application/application/octet...
    编程 发布于2025-04-17
  • 如何将来自三个MySQL表的数据组合到新表中?
    如何将来自三个MySQL表的数据组合到新表中?
    mysql:从三个表和列的新表创建新表 答案:为了实现这一目标,您可以利用一个3-way Join。 选择p。*,d.content作为年龄 来自人为p的人 加入d.person_id = p.id上的d的详细信息 加入T.Id = d.detail_id的分类法 其中t.taxonomy =...
    编程 发布于2025-04-17
  • input: Why Does "Warning: mysqli_query() expects parameter 1 to be mysqli, resource given" Error Occur and How to Fix It?

output: 解决“Warning: mysqli_query() 参数应为 mysqli 而非 resource”错误的解析与修复方法
    input: Why Does "Warning: mysqli_query() expects parameter 1 to be mysqli, resource given" Error Occur and How to Fix It? output: 解决“Warning: mysqli_query() 参数应为 mysqli 而非 resource”错误的解析与修复方法
    mysqli_query()期望参数1是mysqli,resource给定的,尝试使用mysql Query进行执行MySQLI_QUERY_QUERY formation,be be yessqli:sqli:sqli:sqli:sqli:sqli:sqli: mysqli,给定的资源“可能发...
    编程 发布于2025-04-17
  • 收益递减法则详解及应用
    收益递减法则详解及应用
    [2 的回报降低的原则决定,在添加某些元素的同时,最初会改善产品或体验,超过最佳点会导致负面后果。 这适用于设计和开发的各个方面。 太多的动画会引起干扰,而中等量则增强了自然流动。 同样,足够的线间距可提高可读性,但是过度间距会阻碍它。 上下文Alt文本是有益的,但过度会变成噪音。 适当的填...
    编程 发布于2025-04-17
  • Spark DataFrame如何添加常数列?
    Spark DataFrame如何添加常数列?
    在spark中添加spark dataframes中的常数列在Spark中,可以使用各种方法在数据帧中添加一个常数列。值,可以用作dataframe.withcolumn的第二个参数,以添加一个常数列:对于更复杂的列,诸如数组,地图和struct之类的函数可用于构建所需的列值:typedLit (...
    编程 发布于2025-04-17
  • 在UTF8 MySQL表中正确将Latin1字符转换为UTF8的方法
    在UTF8 MySQL表中正确将Latin1字符转换为UTF8的方法
    在UTF8表中将latin1字符转换为utf8 ,您遇到了一个问题,其中含义的字符(例如,“jáuòiñe”)在utf8 table tabled tablesset中被extect(例如,“致电。为了解决此问题,您正在尝试使用“ mb_convert_encoding”和“ iconv”转换受...
    编程 发布于2025-04-17
  • 如何检查对象是否具有Python中的特定属性?
    如何检查对象是否具有Python中的特定属性?
    方法来确定对象属性存在寻求一种方法来验证对象中特定属性的存在。考虑以下示例,其中尝试访问不确定属性会引起错误: >>> a = someClass() >>> A.property Trackback(最近的最新电话): 文件“ ”,第1行, AttributeError: SomeClass...
    编程 发布于2025-04-17
  • Python高效去除文本中HTML标签方法
    Python高效去除文本中HTML标签方法
    在Python中剥离HTML标签,以获取原始的文本表示Achieving Text-Only Extraction with Python's MLStripperTo streamline the stripping process, the Python standard librar...
    编程 发布于2025-04-17
  • 解决MySQL错误1153:数据包超出'max_allowed_packet'限制
    解决MySQL错误1153:数据包超出'max_allowed_packet'限制
    mysql错误1153:故障排除比“ max_allowed_pa​​cket” bytes 更大的数据包,用于面对阴谋mysql错误1153,同时导入数据capase doft a Database dust?让我们深入研究罪魁祸首并探索解决方案以纠正此问题。理解错误此错误表明在导入过程中接...
    编程 发布于2025-04-17

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3