【问题标题】:Relative to absolute: get the position that a relatively positioned element would have if it was absolutely positioned?相对于绝对:获取相对定位的元素在绝对定位时的位置?
【发布时间】:2014-04-10 01:46:37
【问题描述】:

我想知道是否有办法获得相对定位的元素的“绝对位置”。我想不出来,但也许有人想出了一个方法......

【问题讨论】:

    标签: javascript positioning


    【解决方案1】:

    我不确定您所说的“绝对位置”是什么意思,但您可以使用 el.getBoundingClientRect() 获取元素的客户端坐标

    【讨论】:

    • 相对定位的元素在绝对定位时的位置。
    • 澄清一下,就单个元素而言,相对位置与静态相同。在计算方面,这是 Web 客户端的工作,所以我建议,如果可能的话,将其实际添加到 DOM(如果需要,不可见)并设置超时,以便您可以计算元素在 Web 客户端之后的位置已重新定位。
    • 呃...不确定这是做什么的?我想知道一个相对定位的元素的位置(绝对偏移),就好像它是绝对定位的一样。
    【解决方案2】:

    听起来这个问题需要更多细节。

    从技术上讲,它们应该具有相同的 xy 位置,唯一的区别是相对定位的元素应该有一个它从哪里移动的“足迹”,而绝对定位的元素不应该留下任何“足迹” .

    【讨论】:

    • 我知道。我有兴趣知道一个相对定位的元素在绝对定位时的位置。 (但在同一个地方)
    【解决方案3】:

    这是一个可能的解决方案,但可能需要大量工作才能实施。

    我们知道,在内部,任何浏览器的渲染引擎都知道每个元素的确切位置。如果只是将定位代码提取出来做成一个插件,我们就可以知道每个相对定位元素的屏幕边界(绝对位置)。也许类似于 html2canvas...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多