Comment mettre des boutons radioGroupButtons brillants dans des colonnes

Nov 29 2020

Je voudrais aligner certains radioGroupButtons()de shinyWidgetsdans 5 colonnes également espacées. J'aimerais aussi que les boutons aient tous la même largeur. Les largeurs de colonne fonctionnent un peu mieux si j'utilise direction = "vertical"mais les colonnes finissent encore plus loin les unes des autres. Voici à quoi il ressemble tel quel.

Peut-être que la réponse est cachée ici mais je n'ai pas pu la comprendre.

library(shiny)
library(shinyWidgets)

my_css <-
  ".btn-group, .btn-group-vertical {
    column-count: 5;
  }"


ui <- 
  fluidPage(
    tags$head(tags$style(HTML(my_css))),
    radioGroupButtons(
      inputId = "somevalue1",
      label = NULL,
      choices = 
        setNames(
          1:20,
          rep(c("xs", "medium", "very long", "a whole lotta text"), 5)
        )#, direction = "vertical"
    )
  )


server <- function(input, output) {}

shinyApp(ui, server)

Réponses

2 gdevaux Nov 29 2020 at 17:35

Vous pouvez tout avoir avec la même largeur en jouant avec le CSS de la classe btn-group-toggle et radiobtn.

my_css <-
  ".btn-group, .btn-group-vertical {
    column-count: 5;
  }
  
  .btn-group-toggle {
  width:200px;
  }

  .radiobtn { 
    width:200px;
  }"