html - 是否可以使用固定宽度的 verbatimTextOutput 并在 Shiny 中更改文本行?

标签 html css r shiny

我有一个简单的应用程序,它使用 verbatimTextOutput 来显示一些文本。我想知道是否可以固定 verbatimTextOutput 的宽度并让文本输出更改行?

请看这个例子(https://yuchenw.shinyapps.io/verbatimtext_bookmark/)。我还附上了下面的代码。

如所附屏幕截图所示,当字符串很长时,verbatimTextOutput 不会显示所有文本。相反,verbatimTextOutput 会在底部显示一个滚动条。

enter image description here

但是,我希望verbatimTextOutput 的底部没有滚动条。我还需要当文本很长时,更改行以适合 verbatimTextOutput。下面以点击书签按钮为例。我们可以看到这个冗长的 URL 换行,并且输出的底部没有滚动条。如果书签按钮可以做到这一点,我希望我也可以让 verbatimTextOutput 显示与书签相似的特征和外观。

如果您有任何问题,请告诉我。

enter image description here

代码

library(shiny)


ui <- function(request){
  fluidPage(
    column(
      width = 6,
      textInput(inputId = "txt", label = "Type in some texts",
                value = paste0(rep(letters, 10), collapse = "")),
      strong("Show the texts"),
      verbatimTextOutput("txt_out"),
      br(),
      bookmarkButton()
    )
  )
}
server <- function(input, output, session){
  output$txt_out <- renderText({
    input$txt
  })
}
enableBookmarking("url")
shinyApp(ui, server)

最佳答案

请尝试以下 css:

library(shiny)

ui <- function(request){
  fluidPage(
    tags$style(type='text/css', '#txt_out {white-space: pre-wrap;}'),
    column(
      width = 6,
      textInput(inputId = "txt", label = "Type in some texts",
                value = paste0(rep(letters, 10), collapse = "")),
      strong("Show the texts"),
      verbatimTextOutput("txt_out"),
      br(),
      bookmarkButton()
    )
  )
}
server <- function(input, output, session){
  output$txt_out <- renderText({
    input$txt
  })
}
enableBookmarking("url")
shinyApp(ui, server)

关于html - 是否可以使用固定宽度的 verbatimTextOutput 并在 Shiny 中更改文本行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58516071/

相关文章:

javascript - 使用 jQuery 根据动态单选输入属性值更改总输入值

css - 无法将我的布局居中

jquery - 伪选择器与 jQuery 行为异常

r - 滚动窗口后创建预测矩阵

r - 如何使用 summarise_at 将不同的函数应用于不同的列?

html - <输入类型 ="file"/> 的基线错误

html - 防止文本到达textarea的右侧,为垂直滚动条预留空间,出现时不会移动文本

html - 为什么使用 <a href> 链接包装图像会改变页面的布局?

CSS 网格响应图像库 : Animation getting stuck on its way

r - 如何在R中给定阈值和缓冲时间来过滤时间序列?