在 Shiny 中更改 Picker Input 的颜色

Posted

技术标签:

【中文标题】在 Shiny 中更改 Picker Input 的颜色【英文标题】:Change color of Picker Input in Shiny 【发布时间】:2019-07-28 05:14:33 【问题描述】:

我想修改我的 Picker Input 标题的字体颜色。我用的是spacelab主题,所以按钮是深灰色的,而按钮的字体颜色是灰色的,所以不太好看。

当我点击按钮,或者选择一些数据时,字体变成白色,所以现在好多了。当我修改样式颜色时,按钮变成白色,即使我告诉他是红色的。示例:

library(shiny)
library(shinythemes)
library(shinyWidgets)
ui <- fluidPage(
  theme = shinytheme("spacelab"),
   pickerInput(
      inputId = "variable_list", choices = LETTERS, width = "60%", multiple = TRUE,
      options = list(size = 10, 'actions-box' = TRUE, 'live-search' = TRUE,
                     virtualScroll = TRUE, 
                     'none-selected-text'= strong("BUTTON TITLE:"), 
                     'selected-text-format'= "static")))

server <- function(input, output, session) 

shinyApp(ui = ui, server = server)

【问题讨论】:

【参考方案1】:

我不确定是否有更直接的方法,但您可以使用 shiny 中的 html 使用 HTML 语法添加您想要的任何格式,例如:

'none-selected-text'=strong(HTML("&lt;span style='color: white'&gt;BUTTON TITLE:&lt;/span&gt;"))

编辑

使用来自shinycenter 标签的包装函数:

strong(tag('center', list(span(style='color: white', 'BUTTON TITLE:'))))

【讨论】:

完美,谢谢!你知道如何用这样的 HTML 语法编译几个条件吗?例如,如果我想将标题居中? 一定要像这样添加中心标签:HTML("&lt;center&gt;&lt;span style='color: white'&gt;BUTTON TITLE:&lt;/span&gt;&lt;/center&gt;") 请看我的编辑,因为我刚刚意识到它可以通过shiny的包装函数来完成 非常完美,非常感谢,我真的应该进入一些 HTML。由于无法使用 PickerInput 制作 ObserveEvent,因此我将其放入 Dropdown 中。因此,仅当我单击 DropDown 按钮时才会生成选择列表。另一件事,HTML 代码可以改变我的应用程序的背景颜色吗?或者我别无选择,只能在我的应用程序之外(在 \www 中)创建一个 CSS 文件? shinyWidgets 有一个函数setBackgroundColor,你可以用它改变背景颜色:rdocumentation.org/packages/shinyWidgets/versions/0.4.5/topics/…

以上是关于在 Shiny 中更改 Picker Input 的颜色的主要内容,如果未能解决你的问题,请参考以下文章

在 Shiny App 中更改文本的颜色和字体

R Shiny Dynamic选择输入 - 捕获事件

在R Shiny中过滤rhandsontable中的行

R Shiny:PlotOutput 未在 Shiny 应用程序中更新

在 Plotly/Shiny 中使用代理接口动态更改数据

如何在 Shiny 中更改选择器输入的字体大小?