R Shiny应用CSS被忽略?tooltip背景色样式不生效问题
问题原因与解决方法
你的CSS选择器写错了,导致样式完全没匹配到目标元素:
- 你写的
.tooltip.inner是选择同时拥有tooltip和inner两个类的元素,但Bootstrap tooltip的内部容器类名是tooltip-inner(连字符连接),且它是.tooltip的子元素。
修正后的CSS选择器应该是.tooltip .tooltip-inner(匹配.tooltip元素下的.tooltip-inner子元素),或者直接用.tooltip-inner(优先级稍低,但也能生效)。
替换后的完整代码:
library(shiny) ui <- fluidPage( span( `data-toggle` = "tooltip", `data-placement` = "auto", `data-trigger` = "click hover", title = "I'm a tooltip!", icon("info-circle", style="font-size: 150%;")), tags$script( HTML( "$(function () { $('[data-toggle=tooltip]').tooltip(); });" ) ), tags$style( ".tooltip .tooltip-inner{background-color:red !important;}" ) ) server <- function(input, output) {} shinyApp(ui = ui, server = server)
你之前搞错了CSS选择器的规则:.tooltip .tooltip-inner是父子元素选择(空格分隔,选父元素下的子元素),而.tooltip.inner是多类选择(无空格,选同时拥有两个类的同一元素),这种基础概念混淆是导致样式不生效的核心原因。
内容的提问来源于stack exchange,提问作者Bajcz
相关产品推荐
相关产品推荐

