【问题标题】:Shiny: How to change a background colour of a column?Shiny:如何更改列的背景颜色?
【发布时间】:2020-02-26 09:01:54
【问题描述】:

我有一个 fluidRow,其中包含三个 ,其中包含一些小部件。是否可以更改中间列(或此列中的所有小部件)的颜色?

例如:白柱-灰柱-白柱

【问题讨论】:

  • 对于单个对象的着色(或更一般地,样式化),@Barranka 的答案是要走的路。如果您想更改一组对象,您应该使用您的应用程序查看using CSS stylesheets

标签: r shiny


【解决方案1】:

我认为您可以为元素添加样式;像这样:

column(3, style = "background-color:#4d3a7d;", ...)

希望对你有帮助

【讨论】:

  • 还有一个简单的wellPanel(),您可以用它封装项目以将其变为灰色。
  • 完美运行。谢谢!
【解决方案2】:

这也可以通过shinyjs 包以反应方式完成。您可以为列分配“id”并添加/删除/切换 CSS 类以响应 UI。修改“shinyjs”文档中的示例:

if (interactive()) {
  library(shiny)
  library(shinyjs)
  shinyApp(
    ui = fluidPage(
      useShinyjs(), # Set up shinyjs

      inlineCSS(list(.red = "background: red",
                     .blue = "background: blue")),
      fluidRow(
        column(3, id = "col1",
         actionButton("btn1", "Click me"),
        ),
        column(6, id = "col2",
               actionButton("btn2", "Click me too")
        )
      )
    ),
    server = function(input, output) {
      observeEvent(input$btn1, {
        toggleClass("col1", "red")
      })
      observeEvent(input$btn2, {
        toggleClass("col2", "blue")
    })
    }
  )
}

【讨论】:

    猜你喜欢
    • 2019-02-11
    • 2021-09-16
    • 2014-03-21
    • 2021-09-19
    • 1970-01-01
    • 2018-01-04
    • 2013-11-16
    • 2023-03-04
    • 1970-01-01
    相关资源
    最近更新 更多