【问题标题】:Disable css styles for single tables禁用单个表的 css 样式
【发布时间】:2020-09-01 07:09:28
【问题描述】:

问题:目前,我在 Shiny 中使用 flatly 主题。但是,我不喜欢表格的显示。有没有办法轻松获得仅适用于表格的默认主题(另见屏幕截图)?

现状:

目标:

library("shiny")
library("formattable")

shinyApp(
  ui = fluidPage(
    theme = shinythemes::shinytheme("flatly"),
    sidebarPanel(
      formattableOutput("table")
    ),
    mainPanel(
    )
  ),
  server = function(input, output) {
    test.table <- data.frame(lapply(1:8, function(x) {1:10}))
    
    output$table <- renderFormattable({formattable(test.table, list())})
  }
)

【问题讨论】:

    标签: css r shiny


    【解决方案1】:

    不确定您所说的简单方法是什么意思。(;但是为了达到您想要的结果,您可以添加一些自定义 css,用默认值覆盖表格样式的规则。

    为了让示例更有趣,我将您的表格放在来自here 的实时主题选择器示例中,并使用mtcars 作为示例数据集:

    library("shiny")
    library("formattable")
    
    shinyApp(
      ui = fluidPage(
        shinythemes::themeSelector(),  # <--- Add this somewhere in the UI
        tags$style(HTML("
          .table > tbody > tr > td,
          .table > tbody > tr > th,
          .table > tfoot > tr > td,
          .table > tfoot > tr > th,
          .table > thead > tr > td,
          .table > thead > tr > th {
            font-family: 'Helvetica Neue', Helvetica,Arial,sans-serif;
            font-size: 14px;
            line-height: 1.42857143;
            color: #333;
            border-bottom: 2px solid #ecf0f1;
            border-collapse: collapse;
            border-spacing: 0;
            padding: 8px;
            margin-bottom: 20px;
            background-color: transparent;
          }
        ")),
        sidebarPanel(
          textInput("txt", "Text input:", "text here"),
          sliderInput("slider", "Slider input:", 1, 100, 30),
          actionButton("action", "Button"),
          actionButton("action2", "Button2", class = "btn-primary")
        ),
        mainPanel(
          tabsetPanel(
            tabPanel("Tab 1"),
            tabPanel("Tab 2")
          ),
          formattableOutput("table")
        )
      ),
      server = function(input, output) {
        test.table <- mtcars
        
        output$table <- renderFormattable({formattable(test.table, list())})
      }
    )
    

    【讨论】:

      猜你喜欢
      • 2013-08-16
      • 2016-11-24
      • 2010-12-27
      • 2018-11-12
      • 2021-01-17
      • 2012-11-02
      • 2014-02-07
      • 1970-01-01
      • 2012-05-27
      相关资源
      最近更新 更多