【问题标题】:How to format text using shiny html?如何使用闪亮的 html 格式化文本?
【发布时间】:2022-11-02 17:52:11
【问题描述】:

在底部的示例代码中,我正在尝试格式化在 shinyBS 包 popify() 函数中呈现的文本,如下图所示(减少项目符号缩进并右对齐文本)。我相信这段代码使用闪亮的 html。怎么可能做到这一点?

代码:

library(shiny)
library(shinyBS)

app = shinyApp(
  ui =
    fluidPage(
      sidebarLayout(
        sidebarPanel(sliderInput("bins","Number of bins:",min = 1,max = 50,value = 30)),
        mainPanel(
          plotOutput("distPlot"),
          uiOutput("uiExample"))
      )
    ),
  server =
    function(input, output, session) {
      output$distPlot <- renderPlot({
        x <- faithful[, 2]
        bins <- seq(min(x), max(x), length.out = input$bins + 1)
        hist(x, breaks = bins, col = 'darkgray', border = 'white')
      })
      output$uiExample <- renderUI({
        tagList(
          tags$span("Little circle >>"),
          tags$span(
            popify(icon("info-circle", verify_fa = FALSE),
                   "Placeholder",
                   paste(
                   "This table below presents a whole bunch of great information so strap in:",
                   "<ul>",
                   "<li>Blah blah blah blah blah blah blah blah blah blah blah.</li>",
                   "<li>Blah blah blah blah blah blah blah blah blah blah blah.</li>",
                   "<li>Blah blah blah blah blah blah blah blah blah blah blah blah blah.</li>",
                   "<li>Blah blah blah blah blah blah blah blah blah blah blah blah.</li>",
                   "<li>Blah blah blah blah blah blah blah blah blah blah",
                    "Blah blah blah blah blah blah.</li>",
                   "</ul>")
            )
          )  
        )
      })
    }
)

runApp(app)

【问题讨论】:

    标签: html r shiny shinybs


    【解决方案1】:

    将此添加到您的 UI

                tags$style(
                    '
                    .popover ul {padding: 1px; text-align: right;}
                    '
                )
    

    【讨论】:

      【解决方案2】:

      并使用我想要的格式将 Iz100 的答案合并到完整的代码中:

      library(shiny)
      library(shinyBS)
      
      app = shinyApp(
        ui =
          fluidPage(
            tags$style('.popover ul {padding: 15px; text-align: justify;}'), # << Iz100 solution here
            sidebarLayout(
              sidebarPanel(sliderInput("bins","Number of bins:",min = 1,max = 50,value = 30)),
              mainPanel(
                plotOutput("distPlot"),
                uiOutput("uiExample"))
            )
          ),
        server =
          function(input, output, session) {
            output$distPlot <- renderPlot({
              x <- faithful[, 2]
              bins <- seq(min(x), max(x), length.out = input$bins + 1)
              hist(x, breaks = bins, col = 'darkgray', border = 'white')
            })
            output$uiExample <- renderUI({
              tagList(
                tags$span("Little circle >>"),
                tags$span(
                  popify(icon("info-circle", verify_fa = FALSE),
                         "Placeholder",
                         paste(
                         "This table below presents a whole bunch of great information so strap in:",
                         "<ul>",
                         "<li>Blah blah blah blah blah blah blah blah blah blah blah.</li>",
                         "<li>Blah blah blah blah blah blah blah blah blah blah blah.</li>",
                         "<li>Blah blah blah blah blah blah blah blah blah blah blah blah blah.</li>",
                         "<li>Blah blah blah blah blah blah blah blah blah blah blah blah.</li>",
                         "<li>Blah blah blah blah blah blah blah blah blah blah",
                          "Blah blah blah blah blah blah.</li>",
                         "</ul>")
                  )
                )  
              )
            })
          }
      )
      
      runApp(app)
      

      【讨论】:

        猜你喜欢
        • 2018-07-21
        • 2016-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多