当前位置: 首页 > article >正文

前端 Overflow hidden与auto切换时页面右移的问题解决 Antd Drawer打开关闭时位置偏移的问题的解决

目录

一、Overflow hidden与auto切换时页面右移的问题解决

二、Antd Drawer打开关闭时位置偏移的问题的解决


一、Overflow hidden与auto切换时页面右移的问题解决

在通过js切换页面全局滚动条状态时,我发现页面随着滚动条的消失与重现发生了位置变化。

最初切换的逻辑代码如下:

    if (condition) {
            document.body.style.overflow = "hidden"
        } else {
            document.body.style.overflow = "unset"
        }

解决方案:

     if (condition) {
            let scrollWidth: number = window.innerWidth - document.documentElement.clientWidth
            document.body.style.overflow = "hidden"
            document.body.style.width = `calc(100% - ${scrollWidth}px)`
        } else {
            document.body.style.overflow = "unset"
            document.body.style.width = "100%"
        }

这里我们获取到页面全局的滚动条宽度,再将页面宽度设置成一个定值,在条件切换的状态下,页面就不会发生位置变化了。

二、Antd Drawer打开关闭时位置偏移的问题的解决

一的解决方案也是二的解决方案,通过查看Antd Drawer打开时的body样式,我们可以发现,body在Antd Drawer打开时被Antd设置了样式,即“width: calc(100% - 滚动条宽度)”,这就是发生偏移的问题所在,我们只需要确保打开时body的宽度是我们预期的宽度即可解决该问题。

亲测有效!


http://www.kler.cn/a/613920.html

相关文章:

  • 【微服务架构】本地负载均衡的实现(基于权重算法)
  • Css环形旋转立体感动画
  • iOS自定义collection view的page size(width/height)分页效果
  • 软件需求未明确非功能性指标(如并发量)的后果
  • Docker 部署 Redis 集群学习记录
  • 26考研——树与二叉树_树、森林(5)
  • 怎么解决父元素高度塌陷
  • 从零到一:ESP32与豆包大模型的RTC连续对话实现指南
  • Java 开发中的 AI 黑科技:如何用 AI 工具自动生成 Spring Boot 项目脚手架?
  • scikit-learn 线性回归:函数、原理、优化与实例解析
  • 第三代互联网 互联网发展的全新范式
  • DeepFlow助力精准定位APISIX故障,消除诊断方向偏差
  • 第21周:RestNet-50算法实践
  • 【Java SE】包装类 Byte、Short、Integer、Long、Character、Float、Double、Boolean
  • 将 Markdown 表格结构转换为Excel 文件
  • PPT制作,分享下2025年国内外做PPT的AI工具,一健生成PPT
  • 【linux】文件与目录命令 - rev
  • python 、pip、conda、poetry的关系
  • Stable Virtual Camera 重新定义3D内容生成,解锁图像新维度;BatteryLife助力更精准预测电池寿命
  • Qt开发:QFileDialog的使用