Vertical scroll bar only for single tab

Can we have a vertical (webpage scrollbar) only for the single tab in the below application (Tab1). Is it possible?

library(shiny)
ui <- fluidPage(
  tabsetPanel(
    id="inTabset",
    tabPanel("Tab 1",actionButton("switch_tab", "Go to the third tab")
    ),
    tabPanel("Tab 2", "there!"),
    tabPanel("Tab 3", "there!"))

)

server <- function(input, output, session) {

  observeEvent(input$switch_tab, {
    updateTabsetPanel(session, "inTabset",selected = "Tab 3")
  })

}
shinyApp(ui = ui, server = server)

css style set overflow:scroll; with a definite height and some content that could overflow the container.

library(shiny)
ui <- fluidPage(
  tabsetPanel(
    id = "inTabset",
    tabPanel(
      "Tab 1",
      div(
        style = "width:50%;height:300px;overflow:scroll;",
        actionButton("switch_tab", "Go to the third tab"),
        p("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse congue neque vestibulum enim pretium, quis ullamcorper augue porttitor. Nullam nisi tellus, rhoncus sed faucibus ac, congue quis urna. Morbi nisl libero, congue ut nisi in, tempor maximus libero. Ut velit nibh, rutrum sed posuere a, viverra sed odio. Donec commodo turpis augue, sed cursus est facilisis in. Nullam justo est, laoreet sed bibendum vel, malesuada et turpis. Nam at fringilla nunc. Curabitur malesuada, eros a porta lobortis, dolor elit ultrices magna, eget porttitor tortor purus non diam. Maecenas euismod pretium lorem, eget bibendum quam varius quis. In hac habitasse platea dictumst.

Aliquam sagittis pretium risus, sit amet volutpat tortor pulvinar sed. Integer volutpat, odio vel elementum pellentesque, enim nunc dictum lectus, non scelerisque tortor velit ac odio. Aliquam arcu arcu, viverra vel mattis non, venenatis ut dui. Sed scelerisque viverra leo sed convallis. Maecenas ut lacinia augue, sit amet sagittis tortor. Praesent a aliquam felis. Sed pretium aliquam feugiat. Sed at tortor at enim molestie pulvinar. In gravida ante mauris, quis gravida erat hendrerit non. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam egestas ligula sed nisi fermentum, non vulputate ipsum sodales. In lobortis feugiat augue, et vehicula nisl maximus id. Vivamus sollicitudin fringilla ullamcorper. Donec a metus tempus, tincidunt leo eu, convallis nisl. In massa mauris, vehicula vel lectus id, ultrices molestie tortor. Nunc posuere eget erat a porttitor.

Maecenas tristique lectus justo, a suscipit leo malesuada ut. Aliquam dapibus dolor et magna pulvinar consequat. Aliquam nunc lorem, finibus eu porttitor at, tempor sit amet est. Aliquam faucibus dui sed vestibulum tincidunt. Aenean vitae libero eu orci sodales scelerisque. Vestibulum sem lectus, viverra a magna ac, bibendum luctus velit. Nam posuere rhoncus est, interdum iaculis nulla pharetra non.

Donec rhoncus, justo et viverra eleifend, erat metus ultricies purus, eget porta turpis ex a ligula. Donec porttitor quis ligula eget consequat. Donec faucibus, ex in tristique luctus, tellus urna imperdiet dolor, ut sodales mauris odio quis quam. Proin tincidunt, felis sit amet ultrices vehicula, nisi enim malesuada lorem, ut egestas sapien mauris a felis. Proin eget efficitur urna. Nullam sed ultrices massa. Donec sed sem laoreet, eleifend massa ac, varius eros. Aenean aliquet ex non auctor egestas.

In consectetur, massa in ultrices bibendum, sapien ante tempus libero, eget porta ante massa ac lorem. Vivamus gravida nisl et tellus condimentum, eu pharetra justo malesuada. Fusce egestas eros vitae lectus cursus cursus. Quisque nec nulla sit amet nulla dignissim porta. Cras odio arcu, luctus non tortor ac, lobortis finibus diam. Vivamus posuere tempus mauris mollis sodales. Nam scelerisque tortor nibh, vitae hendrerit mauris tincidunt vitae. Nullam cursus lectus magna, et varius lectus iaculis eu. Ut sagittis mi quis odio volutpat sagittis. Cras pulvinar odio at tortor facilisis tincidunt. Morbi fermentum convallis neque auctor posuere. Nullam consectetur dapibus magna a laoreet.")
      )
    ),
    tabPanel("Tab 2", "there!"),
    tabPanel("Tab 3", "there!")
  )
)

server <- function(input, output, session) {
  observeEvent(input$switch_tab, {
    updateTabsetPanel(session, "inTabset", selected = "Tab 3")
  })
}
shinyApp(ui = ui, server = server)

Thanks Nir. But actually this is a kind of Iframes scroll bar and not for webpage scrollbar :slight_smile: . Anyways let me explain, I put the below code to remove the webpage vertical scroll bar, but it removes for all tabs. Is there a way to remove vertical scroll bar for all tabs expect for tab1?

tags$style("body{
                             width:100%;
                             overflow-x:hidden;
                             overflow-y:hidden;
                         }")

This topic was automatically closed 54 days after the last reply. New replies are no longer allowed.