更改'shinydashboardPlus::descriptionBlock()的默认CSS样式`
我觉得更改'shinydashboardPlus::descriptionBlock()的默认CSS样式`,css,r,shiny,Css,R,Shiny,我觉得shinydashboardPlus::descriptionBlock()相当不错,但我有点沮丧,因为无法在R中更改它的样式。我们如何才能做到这一点 标题必须为粗体 文本必须为大写 使用number中的HTML()将图标置于下一行 展示案例: library(shiny) library(shinydashboard) shinyApp( ui = dashboardPage( dashboardHeader(), dashboardSidebar(),
shinydashboardPlus::descriptionBlock()
相当不错,但我有点沮丧,因为无法在R中更改它的样式。我们如何才能做到这一点
必须为粗体标题
必须为大写文本
- 使用
中的number
将图标置于下一行HTML()
library(shiny)
library(shinydashboard)
shinyApp(
ui = dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
box(
solidHeader = FALSE,
title = "Status summary",
background = NULL,
width = 4,
status = "danger",
footer = fluidRow(
column(
width = 6,
descriptionBlock(
number = "17%",
numberColor = "green",
numberIcon = "caret-up",
header = "not bold please",
text = "set me in lowercase please",
rightBorder = TRUE,
marginBottom = FALSE
)
),
column(
width = 6,
descriptionBlock(
number = HTML("<h4>icon?</h4>"),
numberColor = "red",
numberIcon = "skull-crossbones",
header = "using html put",
text = "icon to next line",
rightBorder = FALSE,
marginBottom = FALSE
)
)
)
)
),
title = "Description Blocks"
),
server = function(input, output) { }
)
库(闪亮)
图书馆(shinydashboard)
shinyApp(
ui=仪表板页面(
仪表板标题(),
仪表板侧栏(),
仪表板主体(
盒子(
solidHeader=FALSE,
title=“状态摘要”,
背景=空,
宽度=4,
status=“危险”,
页脚=fluidRow(
纵队(
宽度=6,
描述块(
number=“17%”,
numberColor=“绿色”,
numberIcon=“插入符号向上”,
header=“请不要加粗”,
text=“请用小写字母设置我”,
rightBorder=TRUE,
marginBottom=FALSE
)
),
纵队(
宽度=6,
描述块(
数字=HTML(“图标?”),
numberColor=“红色”,
numberIcon=“骷髅交叉骨”,
header=“使用html放置”,
text=“下一行的图标”,
rightBorder=FALSE,
marginBottom=FALSE
)
)
)
)
),
title=“描述块”
),
服务器=函数(输入、输出){}
)
要解决此问题,您需要插入与软件包提供的css代码同样具体的css语句
- 要删除粗体标题,请插入
.description block>.description header{font-weight:500;}
- 要删除始终大写的insert
.description block>.description text{text transform:none;}
- 图标问题。问题是您使用的是
标记。默认情况下,这是一个块元素,它将下一个对象移动到新行。在这里,您可以使用不同的标记,例如
,或者将显示属性设置为
。在下面的示例中,我使用了后面的解决方案内联块
library(shiny)
library(shinydashboard)
shinyApp(
ui = dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
tags$head(
tags$style(
HTML("
.description-block>.description-text {
text-transform: none;
}
.description-block>.description-header {
font-weight: 500;
}
.description-percentage>h4 {
display: inline-block;
}
")
)
),
box(
solidHeader = FALSE,
title = "Status summary",
background = NULL,
width = 4,
status = "danger",
footer = fluidRow(
column(
width = 6,
descriptionBlock(
number = "17%",
numberColor = "green",
numberIcon = "caret-up",
header = "not bold please",
text = "set me in lowercase please",
rightBorder = TRUE,
marginBottom = FALSE
)
),
column(
width = 6,
descriptionBlock(
number = HTML("<h4>icon?</h4>"),
numberColor = "red",
numberIcon = "skull-crossbones",
header = "using html put",
text = "icon to next line",
rightBorder = FALSE,
marginBottom = FALSE
)
)
)
)
),
title = "Description Blocks"
),
server = function(input, output) { }
)
库(闪亮)
图书馆(shinydashboard)
shinyApp(
ui=仪表板页面(
仪表板标题(),
仪表板侧栏(),
仪表板主体(
标签$head(
标签$style(
HTML(“
.description block>.description text{
文本转换:无;
}
.description block>.description头{
字号:500;
}
.说明百分比>h4{
显示:内联块;
}
")
)
),
盒子(
solidHeader=FALSE,
title=“状态摘要”,
背景=空,
宽度=4,
status=“危险”,
页脚=fluidRow(
纵队(
宽度=6,
描述块(
number=“17%”,
numberColor=“绿色”,
numberIcon=“插入符号向上”,
header=“请不要加粗”,
text=“请用小写字母设置我”,
rightBorder=TRUE,
marginBottom=FALSE
)
),
纵队(
宽度=6,
描述块(
数字=HTML(“图标?”),
numberColor=“红色”,
numberIcon=“骷髅交叉骨”,
header=“使用html放置”,
text=“下一行的图标”,
rightBorder=FALSE,
marginBottom=FALSE
)
)
)
)
),
title=“描述块”
),
服务器=函数(输入、输出){}
)
我对shinyDashboardPlus不太熟悉,但是本文应该适用于定制CSS,不管是什么包:您好,谢谢。关于图标,问题是,只要参数存储了任何HTML()
,图标就会转到下一行,这是我们要防止的。@yeahman269好的,我添加了我认为解决图标问题的方法。顶部答案!谢谢