我试图通过ShinyBS软件包的bsTooltip()
功能向我的闪亮应用程序中的不同操作按钮添加一些工具提示,并且我想仅修改特定工具提示框的宽度。为此,我可以在UI的开头指定HTML标记并直接修改CSS,但是如果使用简单元素.tooltip {...}
,则会修改代码中每个工具提示的宽度:
在下面,您可以找到带有两个不同操作按钮的最小可复制示例:
library(shiny)
library(shinyBS)
library(shiny)
ui <- fluidPage(
tags$head(tags$style(HTML(".tooltip {width: 300px;}"))),
br(),
actionButton(inputId = "button1",
label = "First"),
bsTooltip(id = "button1",
title = "Bonjour!",
placement = "right",
trigger = "hover"),
br(),
br(),
actionButton(inputId = "button2",
label = "Second"),
bsTooltip(id = "button2",
title = "Hello!",
placement = "right",
trigger = "hover")
)
server <- function(input, output, session) {
}
shinyApp(ui, server)
我以前就处于这种情况,例如,当我不得不修改特定
textInput()
小部件的color of the placeholder时。为此,我在HTML()
函数中指定了:tags$head(tags$style(HTML("#textinput_ID::placeholder {color: #EEE1525;}")))
但这似乎在这种情况下不起作用。
非常感谢你的帮助!
最佳答案
您可以将actionButton
和bsTooltip
包裹在具有ID的div
中。现在,您可以通过其ID选择此div
,并且仅在其中设置工具提示的样式。
library(shiny)
library(shinyBS)
ui <- fluidPage(
tags$head(tags$style(HTML("#button1_div .tooltip {width: 300px;}"))),
br(),
div(id='button1_div',
actionButton(inputId = "button1",
label = "First"),
bsTooltip(title = "Bonjour!",
placement = "right",
trigger = "hover")),
br(),
br(),
actionButton(inputId = "button2",
label = "Second"),
bsTooltip(id = "button2",
title = "Hello!",
placement = "right",
trigger = "hover")
)
server <- function(input, output, session) {
}
shinyApp(ui, server)
关于html - 设置单个bsTooltip(shinyBS)元素的样式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58320525/