闪亮的‘sliderInput()’的内联标签

时间:2021-05-10 09:54:44

标签: css r shiny

我想让 sliderInput() 标签与幻灯片用于特定小部件

应用 approch SO 导致这种行为(小部件标签错位在图片上):

enter image description here

假定的“内联”顶部幻灯片已折叠。请问我们如何解决这个问题?

library(shiny)
ui <- fluidPage(
  tags$head(
    tags$style(
      type="text/css", 
      "#inline label { 
        display: table-cell; text-align: center; vertical-align: middle; 
      } 
      #inline .form-group { 
        display: table-row;
      }")
  ),
  tags$div(id = "inline", 
           sliderInput(inputId = "slid", label = "label inline desired", min = 0, value = 50, step = 1, max = 100)
  ),
  sliderInput(inputId = "slid2", label = "label on top (default)", min = 0, value = 50, step = 1, max = 100)
)
server <- function(input, output, server) {}
shinyApp(ui, server)

1 个答案:

答案 0 :(得分:1)

也许,这将满足您的需求

library(shiny)

ui <- fluidPage(
  sidebarPanel(
    tags$head(tags$style(HTML("div#inline label { width: 32%; }
                               div#inline input { display: inline-block; width: 68%;}"))),
    tags$head(
      tags$style(type="text/css", "#inline label{ display: table-cell; text-align: left; vertical-align: middle; }
                                   #inline .form-group { display: table-row;}")),
    
    div(id="inline",  style="width:35vw;",
        # width = 4,
        div(HTML("<b>Bla bla bla bla bla</b>")),
        br(),
        
        sliderInput("lbl1", "label 1", min = 0, max = 10, value = 1, step = 1),
        sliderInput("lbl2", "my label 2", min = 0, max = 10, value = 2, step = 1),
        sliderInput("lbl3", "long label 3", min = 0, max = 10, value = 3, step = 1),
        sliderInput("lbl4", "very long label 4", min = 0, max = 10, value = 4, step = 1),
        sliderInput("lbl5", "normal label 5", min = 0, max = 10, value = 5, step = 1)
    ),
    sliderInput(inputId = "slid2", label = "label on top (default)", min = 0, value = 50, step = 1, max = 100)
  )
)

server <- function(input, output) {}

shinyApp(ui = ui, server = server)

output