html 防止固定元素在移动的浏览器UI收缩或展开时移动

5ssjco0h  于 2024-01-04  发布在  其他
关注(0)|答案(1)|浏览(234)

我正面临着一个在移动的网页中使用固定元素的挑战,我需要它保持静态,而不管移动的浏览器的UI大小如何变化。

问题:

元素的样式为position: fixedheight: 100lvh
在移动的上,当浏览器UI(如地址栏)隐藏或显示时,此元素会向上移动其位置,这是我想避免的。
即使移动的浏览器UI收缩或展开,固定元素也应该保持不动。
下面是我想要的行为的图像:

在图像中,注意固定元素如何随着UI的变化而调整其位置。如何在UI变化期间保持此元素静止?
任何见解或解决方案将不胜感激。
谢谢你,谢谢

uqdfh47h

uqdfh47h1#

如果元素的样式是位置固定的,只需要设置bottom而不是top,并使用px而不是vh的Exact number,当顶部距离改变时,它总是将位置固定到底部,我在下面添加了一个演示,你可以测试它

  1. <table>
  2. <tbody>
  3. <tr>
  4. <td id="cell1">
  5. Cell 1
  6. </td>
  7. <td id="cell2">
  8. Cell 2
  9. </td>
  10. <td id="cell31">
  11. Cell 3
  12. </td>
  13. <td id="cell4">
  14. Cell 4
  15. </td>
  16. </tr>
  17. <tr>
  18. <td id="cell5">
  19. Cell 5
  20. </td>
  21. <td id="cell6">
  22. Cell 6
  23. </td>
  24. <td id="cell7">
  25. Cell 7
  26. </td>
  27. </tbody>
  28. </table>
  29. <script>
  30. document.querySelector('table').style.bottom = document.documentElement.clientHeight + 'px'
  31. </script>

字符串

展开查看全部

相关问题