html - 调整 R shiny 中框面板的大小

标签 html css r shiny shinydashboard

给定的 R shiny 脚本生成一个带有多个选择输入的框面板,如下面的快照所示。盒子面板是这样的,当我们隐藏或显示侧边栏时,面板会调整盒子的大小并且它们保持不变。

但是,当我删除或添加一个额外的小部件(例如 selectinput)时,这些小部件不会端到端地跨越框面板的长度并脱离面板。如何做到这样,当我添加一个额外的小部件或删除一个小部件时,端到端的跨越得到保持?

## app.R ##
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
box(title = "Data", status = "primary", solidHeader = T, width = 12,
    fluidPage(
      fluidRow(
column(2,offset = 0, style='padding:1px;', 
selectInput("select1","select1",c("A1","A2","A3"), selected = "A1")),
        column(2,offset = 0, style='padding:1px;', 
selectInput("select2","select2",c("A3","A4","A5"), selected = "A3")),
        column(2, offset = 0, 
style='padding:1px;',selectInput("select2","select2",c("A3","A4","A5"), 
selected = "A3")),
        column(2, offset = 0, 
style='padding:1px;',selectInput("select2","select2",c("A3","A4","A5"), 
selected = "A3")),
column(2, offset = 0, 
style='padding:1px;',selectInput("select2","select2",c("A3","A4","A5"), 
selected = "A3")),

        column(2, offset = 0, 
style='padding:1px;',selectInput("select2","select2",c("A3","A4","A5"), 
selected = "A3")),
        tags$head(
          tags$style("
                     .input-sm,.selectize-input {
                     min-height: 34px;  font-size: 11.2px;
                     }
                     ")))))))
server <- function(input, output) { }
shinyApp(ui, server)

Image capture

最佳答案

使用 splitLayout 你可以试试这个。只需取消注释即可将所有六个 sliderInput 放入您的框中。

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody(
    box(title = "Data", status = "primary", solidHeader = T, width = 12,
        splitLayout(
      cellArgs = list(style = "padding: 10px"),
                   selectInput("select1","select1",c("A1","A2","A3"), selected = "A1"),
                   selectInput("select2","select2",c("A3","A4","A5"), selected = "A3")
                #  selectInput("select2","select2",c("A3","A4","A5"), selected = "A3"),
               #   selectInput("select2","select2",c("A3","A4","A5"), selected = "A3")
               #   selectInput("select2","select2",c("A3","A4","A5"), selected = "A3")
             #     selectInput("select2","select2",c("A3","A4","A5"), selected = "A3")
                  ))))
server <- function(input, output) { }
shinyApp(ui, server)

关于html - 调整 R shiny 中框面板的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48339384/

相关文章:

r - 将数据帧拆分为固定大小的行

python - 在 Windows 7 下从 python 启动时找不到 R 包

jquery - 主体的wrapInner()直到指定元素

javascript - 如果用户单击图标图像,如何显示 bsDatePicker 弹出窗口

css - 垂直对齐另一个 div 内的图像 div

css - 是 :hover really needed for cusor?

javascript - 如何使用 .text() 在文本旁边打印变量

javascript - 如何用css和javascript实现打印预览功能。?

javascript - 带有 Sprite 动画的预加载器

r - 将数据框通过管道传递给一个函数,该函数的参数通过管道传递一个点