我正在创建带有蓝色标题的白色div,但是当我在div中放置一个selectInput时,我想要蓝色的标题是selectInput标签。

css -  Shiny 的selectInput标签CSS-LMLPHP

如何编辑下面用于创建块的代码,以使TO_BLUE框的样式与BLUE块相同?

library(shiny)

# I have two blocks BLUE and TO_BLUE
blocks <- c("BLUE", "TO_BLUE")

BLOCK <- function(data, name)
{
  # create a white div with rounded edges
  # the title of the div will have a blue background
  div(style = "
      text-align: center;
      font-size: 12px;
      background-color: white;
      border-radius: 10px;
      color: black;
      margin-bottom: 15px;
      min-height: 55px;
      ",
      id = name,

      if (name == "BLUE") {
        # this div gives the "BLUE" block it's blue background
        div(style = "background-color: #0c283b;
            color: white;
            border-top-left-radius: 10px;
            border-top-right-radius: 10px;
            min-width: 70px;",
            name)
      } else {
        # but how do I get the TITLE within the selectInput to be blue like the block above?
        selectInput(name, "TO_BLUE", choices = c("1", "2", "3", selectize = FALSE))
      }

  )
}

ui <- fluidPage(


   sidebarLayout(
      sidebarPanel(
        lapply(blocks, BLOCK, data = blocks)
      ),

      mainPanel()
   )
)

server <- function(input, output) {
}

shinyApp(ui = ui, server = server)

最佳答案

使用我添加的shinyjs

inlineCSS(".control-label {
            background-color: #0c283b;
            width: 100%;
            color: white;
            border-top-left-radius: 10px;
            border-top-right-radius: 10px;
            }")

关于css - Shiny 的selectInput标签CSS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59758441/

10-13 01:54