【发布时间】:2021-04-06 20:45:27
【问题描述】:
我的闪亮应用程序中的引导工具提示的透明度不可更改,我遇到了一些问题。我可以创建一个有效的简单示例:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(tags$style(type="text/css", ".tooltip.in {
opacity: 1;
filter:alpha(opacity=100);
}"),
div(HTML('<i class="fa fa-info-circle" data-toggle="tooltip" data-placement="right" title="Testericious"></i>')))
)
server <- function(input, output) { }
shinyApp(ui, server)
但是当我将“div”和 css 部分复制到我的真实项目中时,它是透明的(ish)。我会说不透明度可能是 0.5 或更低。
我的挫败感是我有很多代码,除了创建一个全新的项目之外,我不知道如何调试它,我从当前项目中复制一些零碎的东西,直到我有一个工作的应用程序。
如果我通过 chrome 控制台为“.tooltip”应用 css 更改,即使我使用 'opacity: 1 !important' 也没有任何变化。
关于如何解决/解决此问题的任何想法?
编辑: 所以我发现以下位给我带来了问题:
rpivotTable::rpivotTableOutput("custom_pivot", height = NULL, width = NULL)
只有这一点!即使我注释掉关联的服务器文件,我仍然会收到“透明度错误”。但是,当我注释掉上面的 sn-p 时,一切似乎都很好。我觉得这很奇怪,因为以下示例没有似乎有问题:
library(shiny)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(tags$style(type="text/css", ".tooltip.in {
opacity: 1;
filter:alpha(opacity=100);
}"),
div(HTML('<i class="fa fa-info-circle" data-toggle="tooltip" data-placement="right" title="Testericious"></i>')),
rpivotTable::rpivotTableOutput("pivot_data", height = NULL, width = NULL) %>% shinycssloaders::withSpinner()
)
)
server <- function(input, output) {
output$pivot_data <- rpivotTable::renderRpivotTable({rpivotTable::rpivotTable(mtcars,
rows="gear",
aggregatorName = "Sum",
cols=c("cyl","carb"),
vals = 'drat',
locale = 'da')})
}
shinyApp(ui, server)
第二次修改: 它可能是多个 javascript 部分之间的某种扭曲交互。 基本上有 2 个选项卡(2 个 ui 文件)会导致不同的事情。
使用 tab1 (sortableTableOutput) 但不是 tab2 的应用程序: 使工具提示的背景变为白色而不是黑色。
使用 tab2 (rpivotTableOutput) 但不是 tab1 的应用程序: *导致工具提示显示为页面的一个元素 - 即在屏幕底部扩展页面(但是您无法真正看到它,因为您需要在滚动时将鼠标悬停在工具提示图标上 - 除非您缩小) .
同时使用 tab1 和 tab2 的应用程序: 使工具提示变得有些透明
【问题讨论】:
-
您好,根据您提供的信息,几乎不可能知道这是从哪里来的。我在加载了所有包的情况下运行了您的应用程序,并且没有遇到此问题。我唯一的建议是复制您的应用程序并逐步删除部分,以便您可以缩小问题的根源。如果您使用闪亮的模块,这应该更容易:注释模块的 ui 和服务器调用,并逐步取消注释它们。此外,您的 css 已应用于
.tooltip.in,但您说您尝试在 Chrome 控制台中修改.tooltip。您是否尝试在控制台中修改.tooltip.in? -
你的 CSS 很可能在其他地方干扰了这个。给这个 div 一个 ID,这样它就只适用于这个工具提示。
-
这太奇怪了。当我在我的代码中对此进行评论时:
rpivotTable::rpivotTableOutput("pivot_data", height = NULL, width = NULL)工具提示是完全可见的。但是当我在上面的示例中插入 rpivotTable 时,我似乎没有任何透明度问题。
标签: javascript css r shiny