当前位置: 首页 > 面试题库 >

定位位置:当前处于“卡滞”状态的粘性元素

弓玉书
2023-03-14
问题内容

位置:sticky现在可在某些移动浏览器上使用,因此您可以使菜单栏随页面一起滚动,但是每当用户滚动通过时,便会停留在视口顶部。

但是,如果您想在粘滞菜单栏当前处于“粘滞状态”时稍微重新设置样式,该怎么办?例如,您可能希望栏在页面上滚动时始终带有圆角,但是一旦它粘到视口的顶部,您就希望摆脱顶部的圆角,并在其下方添加一个小阴影它。

是否有任何类型的伪选择器(例如::stuck)针对具有position: sticky
当前粘附的元素?还是浏览器供应商正在准备类似这样的东西?如果没有,我将在哪里提出要求?

注意 javascript解决方案对此不利,因为在移动设备上scroll,用户释放手指时通常只会得到一个事件,因此JS无法知道滚动阈值通过的确切时间。


问题答案:

当前没有为当前“卡住”的元素提议选择器。所述Postioned布局模块],其中position: sticky被定义不任一提及任何此类选择器。

可以将CSS的功能请求发布到www样式的邮件列表中。我相信:stuck伪类比::stuck伪元素更有意义,因为您希望在元素处于该状态时以它们本身为目标。事实上,:stuck伪类讨论前一段时间 ; 人们发现,主要的复杂性是困扰所有试图根据呈现或计算的样式进行匹配的拟议选择器:循环依赖。

对于:stuck伪类,使用以下CSS会发生最简单的循环:

:stuck { position: static; /* Or anything other than sticky/fixed */ }
:not(:stuck) { position: sticky; /* Or fixed */ }

而且可能还有更多难以解决的极端情况。

尽管人们普遍认为,基于某些布局状态进行匹配的选择器将是 不错的选择
,但不幸的是,由于存在一些主要限制,因此这些实现并不容易。我不会很快就为这个问题提供纯CSS解决方案。



 类似资料:
  • 本文向大家介绍基于JavaScript定位当前的地理位置,包括了基于JavaScript定位当前的地理位置的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js定位当前地理位置的具体代码,供大家参考,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 问题内容: 我对此稍作停留,以为我会分享这个+ flexbox陷阱: 在将视图切换到Flex Box容器之前,我的粘性div工作正常,并且当将div包裹在flexbox父级中时,div突然变得不粘性。 问题答案: 由于flex box元素默认为,因此所有元素都具有相同的高度,无法滚动。 将添加到粘性元素的高度设置为auto,可以滚动并固定它。 当前,所有主流浏览器均支持此功能,但Safari仍在前

  • 粘性定位的元素 怎么判断已经滚动到固定位置了呢? 滚动到固定位置后,粘性定位的元素的层级 背景颜色 都要改变

  • y 标志允许在源字符串中的指定位置执行搜索。 为了掌握 y 标志的用例,看看它有多好,让我们来探讨一个实际的用例。 regexps 的常见任务之一是"词法分析":比如我们在程序设计语言中得到一个文本,然后分析它的结构元素。 例如,HTML 有标签和属性,JavaScript 代码有函数、变量等。 编写词法分析器是一个特殊的领域,有自己的工具和算法,所以我们就不深究了,但有一个共同的任务:在给定的位

  • 问题内容: 我只是在学习CSS的定位。基于我发现有用的文章,我开始玩转。 使用以下代码,我无法理解为什么绝对灰盒div不在其相对父级之外。我希望灰色框位于容器的左上角。 在以下情况下,也无法理解为什么灰色框不在左上角,而是在橙色框留下的空白处之后移动。我刚刚将灰色框移到了容器div中的第二位。 我发现的所有详细文档(例如MDN)和教程仅演示了2-3个框的非常简单的示例。 问题答案: 为了正确理解这

  • 我有这些要素: 这是他们的CSS配置。 但第一个元素落后于第二个元素。