You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shinydashboard Box背景色不生效问题求助

问题原因分析

你遇到的box背景色不生效的核心问题是没有使用shinydashboard的专属布局结构。shinydashboard的组件(比如box)依赖于它自身的CSS样式体系,而你当前用的是普通Shiny的fluidPage布局,这种情况下box的背景色样式无法被正确加载渲染。

修复后的代码

把你的UI部分改成shinydashboard标准的dashboardPage结构即可解决问题,下面是调整后的完整代码:

library('shiny')
library('shinydashboard')

# UI
ui <- dashboardPage(
  dashboardHeader(title = "Sample Code"),
  dashboardSidebar(), # 可以根据需求自定义侧边栏内容,这里留空
  dashboardBody(
    fluidRow(
      column(6,
             h1("Sample 1"),
             shinydashboard::box(
               title = "Google", 
               "Description for Google", 
               solidHeader = TRUE, 
               background = "green", 
               br(), 
               shiny::actionButton(
                 inputId='link1', 
                 label="Go To Google", 
                 onclick ="window.open('https://google.com', '_blank')"
               )
             ),
             shinydashboard::box(
               title = "Stack Overflow", 
               "Description for Stack Overflow", 
               solidHeader = TRUE, 
               background = "blue", 
               br(), 
               shiny::actionButton(
                 inputId='link2', 
                 label="Go To Stack", 
                 onclick ="window.open('https://stackoverflow.com/', '_blank')"
               )
             )
      )
    )
  )
)

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

#Run the Shiny App to Display Webpage
shinyApp(ui=ui, server=server)
关键改动说明
  • 将原本的fluidPage替换为dashboardPage,这是shinydashboard应用的核心布局容器,必须包含dashboardHeader、dashboardSidebar和dashboardBody三个部分
  • 把你原来的fluidRow和column放到dashboardBody内部,这样shinydashboard的CSS样式就能正确作用于box组件,背景色参数自然就生效了

这样修改后,你就能看到绿色和蓝色背景的box了,同时保留了你原本需要的标题、描述和跳转按钮功能。

内容的提问来源于stack exchange,提问作者User247365

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:23:16