用CSS指示页面上的滚动位置

滚动是我们在网络上都知道和做的事情,以至于它是一种期望,甚至可能是一种习惯,就像刷牙一样。这可能就是为什么我们在设计滚动体验时没有过多考虑的原因——它是一个众所周知的基本功能。事实上,流行的\"没有折叠\"的说法来源于这样一种观点,即人们知道如何滚动,并且没有任何不受欢迎的任意线。 基于滚动的功能往往涉及一些定制的CSS和JavaScript组合。这是因为没有太多的本地特性可供使用。但是如果我们能完成一些只使用CSS的事情呢?&以这个巧妙的带有CSS的水平滚动条为例。我想做一些类似的事情,但表示滚动部分,而不是捕捉连续滚动。换句话说,我只想在到达页面的某个部分时增加长度,而不是在滚动期间增加指示器的长度。 如下所示:CodePen Embed Fallback 这是我的计划:每个部分都带有一个在到达屏幕顶部之前无法检测的指示器。这就是它通过改变颜色而变得可见并粘在视口顶部的地方。 完全相反的情况应该发生在相反的方向:当向上滚动屏幕时,指示器会跟着滚动,伪装自己回到肉眼看不到的状态。 这有两个关键部分。第一种是当指示器接近屏幕顶部时改变颜色。第二种方法是让指示器保持在屏幕的顶部,只有当它的部分向下滚动时才降下来。 第二种方法很容易做到:我们在元素上使用position: sticky;。当一个页面被滚动时,一个粘滞的元素会粘在其父容器内屏幕上的一个给定位置上。CodePen Embed Fallback ,使我们可以更改颜色。由于默认情况下HTML文档的背景是白色的,所以我保留白色作为演示的基色。这意味着指示灯在基色上方时应为白色,在屏幕顶部的指示条上方时应变为其他颜色。虚线指示灯当前不可见,但当它粘在顶部并与指示灯的背景色混合时,虚线指示灯变为可见容器。 这就是CSS混合模式发挥作用的地方。他们给了我们很多选择来创造各种颜色的汞合金。我要用叠加值。这是一个非常动态的性质。我不会深入解释混合(因为CSS技巧Alamanac已经做得很好了),但是考虑到这个演示,我会这么说:当背景颜色是白色时,产生的前景颜色是白色;当背景是其他颜色时,产生的颜色是深色或浅色,取决于混合的颜色。 演示中的指示灯停止为黑色。但是,由于混合,我们认为他们是白色的,因为他们是在一个白色的背景。当它们位于指示器容器元素(紫色的阴影)上方时,我们会看到一个深紫色的指示器停止,因为我们将指示器停止的黑色与指示器容器的紫色混合在一起。 从HTML开始: <;div> 非常简单,对吧?在最上面有一个粘着的容器,当指示器到达顶端时,它会把指示器放在里面。&从那里,我们有三个部分的内容,每个部分的顶部都有一个指示器,该指示器将粘在指示器的顶部并与之混合。 这里是CSS: .passageStops{background color:black;/*每个指示器停止是black*/mix混合模式:overlay;/*这使得它在白色背景上看起来是白色的*/width:33.3%;/*总共有三个部分,因此每个部分是三分之一*/top:calc(1em+3px);} #passage,.passagetops{height:10px;} #passageWrapper,.passagetops{position:sticky;/*容器和停止应该粘贴到顶部*/z-index:1;/*确保指示器和停止停留在最前面*/} #通道{背景:紫色;/*将与黑色混合以形成较深的紫色指示器*/边距:0 0 20px 0;} #通道包装{背景颜色:白色;/*确保我们使用白色来隐藏指示器停止点*/高度:40px;顶部:0px;} /*每个停止点将移动指示器容器宽度的三分之一,以覆盖屏幕当到达最后一段时,整个过程都会发生。*/.帕斯第N个孩子(4) {左边距:33.3%;}.pas第N个孩子(6) {左边距:66.6%;} /*更多样式,诸如此类。*/ 指示灯(.passageStops)为黑色。但是叠加混合模式使它们在混合时显示为白色它下面有白色的背景。由于有三个部分,每个指示器的宽度为三分之一。 指示器有***2***和顶部距离值。这意味着一旦指示器从屏幕顶部到达计算位置,它们就会粘住。当这种情况发生时,显示为白色的黑色指示器与紫色指示器容器混合,使它们看起来是深紫色的,代表页面上新的滚动位置。 反之亦然。当指示器失去其粘性位置时,它将从指示器条的紫色背景移动到页面的白色背景,再次隐藏它…就像它从未出现过一样! 再次演示:CodePen嵌入回退 就是这样。你可以用非白色的背景和其他混合模式来做进一步的实验,或者用渐变来显示指示条或停止点

admin_action_{$_REQUEST[‘action’]}

do_action( "admin_action_{$_REQUEST[‘action’]}" )动作钩子::在发送“Action”请求变量时激发。Action Hook: Fires when an ‘action’ request variable is sent.目录锚点:#说明#源码说明(Description)钩子名称的动态部分$_REQUEST['action']引用从GET或POST请求派生的操作。源码(Source)更新版本源码位置使用被使用2.6.0 wp-admin/admin.php:...

日期:2020-09-02 17:44:16 浏览:1127

admin_footer-{$GLOBALS[‘hook_suffix’]}

do_action( "admin_footer-{$GLOBALS[‘hook_suffix’]}", string $hook_suffix )操作挂钩:在默认页脚脚本之后打印脚本或数据。Action Hook: Print scripts or data after the default footer scripts.目录锚点:#说明#参数#源码说明(Description)钩子名的动态部分,$GLOBALS['hook_suffix']引用当前页的全局钩子后缀。参数(Parameters)参数类...

日期:2020-09-02 17:44:20 浏览:1032

customize_save_{$this->id_data[‘base’]}

do_action( "customize_save_{$this-&gt;id_data[‘base’]}", WP_Customize_Setting $this )动作钩子::在调用WP_Customize_Setting::save()方法时激发。Action Hook: Fires when the WP_Customize_Setting::save() method is called.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分,$this->id_data...

日期:2020-08-15 15:47:24 浏览:775

customize_value_{$this->id_data[‘base’]}

apply_filters( "customize_value_{$this-&gt;id_data[‘base’]}", mixed $default )过滤器::过滤未作为主题模式或选项处理的自定义设置值。Filter Hook: Filter a Customize setting value not handled as a theme_mod or option.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分,$this->id_date['base'],指的是设置...

日期:2020-08-15 15:47:24 浏览:866

get_comment_author_url

过滤钩子:过滤评论作者的URL。Filter Hook: Filters the comment author’s URL.目录锚点:#源码源码(Source)更新版本源码位置使用被使用 wp-includes/comment-template.php:32610...

日期:2020-08-10 23:06:14 浏览:903

network_admin_edit_{$_GET[‘action’]}

do_action( "network_admin_edit_{$_GET[‘action’]}" )操作挂钩:启动请求的处理程序操作。Action Hook: Fires the requested handler action.目录锚点:#说明#源码说明(Description)钩子名称的动态部分$u GET['action']引用请求的操作的名称。源码(Source)更新版本源码位置使用被使用3.1.0 wp-admin/network/edit.php:3600...

日期:2020-08-02 09:56:09 浏览:848

network_sites_updated_message_{$_GET[‘updated’]}

apply_filters( "network_sites_updated_message_{$_GET[‘updated’]}", string $msg )筛选器挂钩:在网络管理中筛选特定的非默认站点更新消息。Filter Hook: Filters a specific, non-default site-updated message in the Network admin.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分$_GET['updated']引用了非默认的...

日期:2020-08-02 09:56:03 浏览:834

pre_wp_is_site_initialized

过滤器::过滤在访问数据库之前是否初始化站点的检查。Filter Hook: Filters the check for whether a site is initialized before the database is accessed.目录锚点:#源码源码(Source)更新版本源码位置使用被使用 wp-includes/ms-site.php:93910...

日期:2020-07-29 10:15:38 浏览:809

WordPress 的SEO 教学:如何在网站中加入关键字(Meta Keywords)与Meta 描述(Meta Description)?

你想在WordPress 中添加关键字和meta 描述吗?关键字和meta 描述使你能够提高网站的SEO。在本文中,我们将向你展示如何在WordPress 中正确添加关键字和meta 描述。为什么要在WordPress 中添加关键字和Meta 描述?关键字和说明让搜寻引擎更了解您的帖子和页面的内容。关键词是人们寻找您发布的内容时,可能会搜索的重要词语或片语。而Meta Description则是对你的页面和文章的简要描述。如果你想要了解更多关于中继标签的资讯,可以参考Google的说明。Meta 关键字和描...

日期:2020-10-03 21:18:25 浏览:1620

谷歌的SEO是什么

SEO (Search Engine Optimization)中文是搜寻引擎最佳化,意思近于「关键字自然排序」、「网站排名优化」。简言之,SEO是以搜索引擎(如Google、Bing)为曝光媒体的行销手法。例如搜寻「wordpress教学」,会看到本站的「WordPress教学:12个课程…」排行Google第一:关键字:wordpress教学、wordpress课程…若搜寻「网站架设」,则会看到另一个网页排名第1:关键字:网站架设、架站…以上两个网页,每月从搜寻引擎导入自然流量,达2万4千:每月「有机搜...

日期:2020-10-30 17:23:57 浏览:1264