gpt4 book ai didi

css - header 中的 R Shiny 覆盖 CSS 文件

转载 作者:技术小花猫 更新时间:2023-10-29 11:40:10 25 4
gpt4 key购买 nike

我在 Shiny 的应用程序中包含了一个 CSS 文件。在包含试图覆盖 CSS 文件的 header 之前,我将其包含在 ui() 函数中。我读过的所有内容都表明 header CSS 声明应该覆盖 CSS 文件。但是,除非我在 header CSS 声明之后使用“!important”规则,否则它不会覆盖它。这是 CSS 文件(名为 temp.css):

 .btn-default {
color: #ffffff;
background-color: #464545;
border-color: #464545;
}

这是 R Shiny 文件(名为 app.R):

library(shiny) 

shinyApp(
ui <- shinyUI(
fluidPage(

# # Set up the basic CSS styling.
includeCSS("temp.css"),

# HTML header with style specifications.
tags$head(
tags$style(

# Colorize the actionButton.
HTML(".btn-default {
background-color: rgb(40,110,5);
color: rgb(199,207,111);
}"
)
)
),
fluidRow(
sidebarPanel(

# Insert a button.
actionButton(
inputId = "testButton",
label = "Click Here"
)
)
)
)
),

server <- shinyServer(function(input, output, session) {
})
)

如果执行以下任一操作,.btn-default header 中的 CSS 声明将对 actionButton 生效:

  1. !important 规则遵循 header 中的 CSS 声明;
  2. 不包含 temp.css 文件;或
  3. 标题声明用于按钮名称,使用:

               HTML("#testButton {
    background-color: rgb(40,110,5);
    color: rgb(199,207,111);
    }"

我还尝试在 header CSS 中包含其他选择器,例如 .btn.action-button

还有什么我应该做的吗?这是一个 Shiny 的问题吗?

最佳答案

如果将 includeCSS("temp.css"), 放在 head 标签中,它将按照您期望的方式工作。我不是专家,但我认为 tag$head 中的所有内容都会首先求值,然后被其他所有内容覆盖。

关于css - header 中的 R Shiny 覆盖 CSS 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34850225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com