收藏
回答

在使用filter应用深色模式时,怎么解决新建 堆叠上下文导致的fixed位置异常?

如题,我想使用

background-color: #1f1f1f;
filter: invert(1) hue-rotate(.5turn);


来使用全局深色模式,单会使得fixed失效

根据 W3C 对 filter 的描述

A value other than none for the filter property results in the creation of a containing block for absolute and fixed positioned descendants unless the element it applies to is a document root element in the current browsing context. The list of functions are applied in the order provided.

对于指定了 filter 样式且值不为 none 时,被应用该样式的元素其子元素中如果有 position 为 absolute 或 fixed 的元素,会为这些元素创建一个新的容器,使得这些绝对或固定定位的元素其定位的基准相对于这个新创建的容器。

在web中,解决办法是应用到html元素或者fixed元素

在小程序中,尝试将filter引入page元素,不起作用

请问下各位大佬有啥好方法解决,或者别的方法来实现深色模式

回答关注问题邀请回答
收藏

1 个回答

  • 小可爱
    小可爱
    2021-09-30

    同问。

    我算是自定义Model弹窗了,fixed之后 暗黑模式直接跑到下面去了

    2021-09-30
    有用
    回复
登录 后发表内容
问题标签