添加 overflow-y 后宽下拉菜单被剪裁:滚动到侧边栏

Wide Drop-down menu gets clipped after adding overflow-y: scroll to Sidebar

我有一个 R Shiny 应用程序,但我相信我的问题需要一个我不太熟悉的 HTML/CSS(可能是 jQuery?)解决方案。我制作了两个简单的 Shiny 应用程序,它们举例说明了我目前面临的问题。

https://sometesting.shinyapps.io/test/

https://sometesting.shinyapps.io/test_-_copy/

第一个 包含 CSS 属性:

.sidebar {
  height: 95vh;
  width: 300px;
  position: fixed;
  overflow-y: scroll;
  }

而第二个 link 确实包含上述​​ CSS 属性。您可以在第二个 link 中看到,下拉菜单被剪裁了。

我想避免这个剪辑问题,让下拉菜单越过边栏和滚动条。我已经研究了很多小时并找到了一些 jQuery 解决方案,但由于我不熟悉 jQuery 加上 R Shiny 生成的 HTML 语法对我来说有多么不同,我是无法解决这个问题。

谢谢!

编辑

感谢moose帮我解决了这个问题!看看这个线程: Rendering Shiny Selectize pull-down menu on top

差不多,我将 dropdownParent: "body" 放在我的 selectizeInput 函数中:

selectizeInput("s1", h4("Select State:"), 
    options = list(dropdownParent = 'body'),
    choices = state.name)

您可能需要调整 selectize-dropdown 的宽度和高度。谢谢驼鹿!

问题出在 selectize 下拉菜单上。如果您使 html 列表可见,溢出将按预期工作,但我假设您需要比默认 select 列表更强大的东西。

这里解决了一个类似的问题: https://github.com/selectize/selectize.js/issues/192

虽然是overflow-x而不是y,但是解决方法应该是一样的。如果做不到这一点,您可以尝试使用 Semantic UI 的下拉菜单(或者更好的是,Semantic UI)