wu-kan/wu-kan.github.io

关于侧边栏在某些特定情况下发生抖动的原因和解决方案

hc495 opened this issue · 3 comments

hc495 commented

在侧边栏文本的高度到达某一个特定区间(刚好大于侧边栏的最大高度)时,滚动条会出现。滚动条出现后由于区域的缩放导致文本高度又小于了侧边栏的最大高度,滚动条又会消失。
这导致了所谓侧边栏的抖动。
解决方案就是加一条类似的CSS

html, body { 
  overflow: scroll; 
  min-height:101%;
}
body {
  width: 100vw;
  overflow: hidden;
}

我的建议是加在append_to_sidebar:键里

但是这个做法会唐突加入一个底边的滚动条...
解决这个问题可能我还得调两天(调整overflow-x为hidden会使得整个新增功能失效,或许需要找一个另外的实现方式)(前端苦手

再次感谢您的主题!

hc495 commented

优化的解决方案(没有底边滚动条)是这样的

  <style>
    .sidebar { 
      overflow: scroll; 
      min-height: 101%;
    }
  </style>

这个实现是在sidebar对象局部生效的。目前没有观察到有整个页面抖动的现象,所以就先这么做了

优化的解决方案(没有底边滚动条)是这样的

  <style>
    .sidebar { 
      overflow: scroll; 
      min-height: 101%;
    }
  </style>

这个实现是在sidebar对象局部生效的。目前没有观察到有整个页面抖动的现象,所以就先这么做了

啊谢谢 我最近在忙保研的事情 月底加进去!

已提交至最新的 commit.