You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Popper.js与fixed定位元素结合时出现意外24px偏移的解决方案咨询

Popper.js与fixed定位元素结合时出现意外24px偏移的解决方案咨询

我在将Popper.js与固定定位元素结合使用时遇到了一个问题。

场景说明:

  • 我有一个设置了position: fixed和top: 24px的<div>元素:
<div id="fixed-element" style="position: fixed; top: 24px;">
  <!-- Content -->
</div>
  • 在这个元素下方,我放置了另一个<div>,想要用Popper.js的strategy: 'fixed'来定位它:
const reference = document.querySelector('#fixed-element');
const popper = document.createElement('div');
document.body.appendChild(popper);

Popper.createPopper(reference, popper, {
  strategy: 'fixed',
  modifiers: [
    {
      name: 'offset',
      options: {
        offset: [0, 10],
      },
    },
  ],
});

问题:
当我应用Popper.js时,它会自动把top属性已有的24px加到指定的偏移量上,导致popper元素比预期位置低了24px。我希望Popper能考虑到已有的24px,只应用我指定的偏移量。

疑问:
有没有办法配置Popper.js让它考虑这个24px的top定位?或者我能不能获取这个值然后手动调整偏移量?还有没有更好的方法来处理固定元素的这种定位需求?

备注:内容来源于stack exchange,提问作者Dasma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 09:08:02