【问题标题】:Changing font size of value in specific valueBox (flexdashboard)更改特定 valueBox 中值的字体大小(flexdashboard)
【发布时间】:2021-07-01 19:13:23
【问题描述】:

我有一个带有一堆 valueBox 的 flexdashboard。然而,有些值是非常长的字符串,因此会溢出页面并且通常看起来很难看。我希望能够在 value 的字符长度超过一定限制时动态更改特定 valueBoxes 的 value font-size。

我知道我可以像这样使用 css 全局更改字体大小:

.value-box .value {
    font-size: 38px;
    font-weight: bold;
    margin: 0 0 3px 0;
    white-space: nowrap;
    padding: 0;
}

但我不想更改每个 valueBox 的 value font-size,只更改特定的 valueBoxes。

我也尝试过使用shiny 中的tags 函数直接编辑字体大小:

### Test Heading
flexdashboard::valueBox(
  value = shiny::tags$p("This is a very long string", style = "font-size: 20px;"),
  caption = "Test Caption"
)

但这似乎并没有改变任何东西。

【问题讨论】:

    标签: css r shiny r-markdown flexdashboard


    【解决方案1】:

    这是可能的,将您的长字符串分配给值,然后使用inline R code 调用 valueBox 内的值。

    ---
    title: "Super long string"
    author: ""
    date: "`r format(Sys.time(), '%d %B, %Y')`"
    output: 
      flexdashboard::flex_dashboard:
        orientation: row
        vertical_layout: fill
    ---
    
    
    ```{r setup, include=FALSE}
    require(flexdashboard)
    value = 'this is a very very very very very very very very very very very very very very very very long string'
    ```
    
    Column {data-width=350}
    -------------------------------------
    ### ```r value```
    
    ```{r}
    valueBox("Valuebox", icon = "fa-pencil", href="#details")
    ```
    

    【讨论】:

    • 谢谢丹尼尔,你说得很好!如果我在想要显示长字符串的情况下使用值框可能不是正确的,但可惜这是我无法更改的格式。另外,正如您所提到的,我确实显示了很多值框,因此我认为在框下方显示文本不太可行。
    • 其实只是在修改后更新了我的答案。
    • 我不是很关注,我知道如何显示值,但我希望能够动态更改特定值框的字体大小,而不必全局更改每个值的字体大小值框
    猜你喜欢
    • 2021-11-08
    • 2021-05-06
    • 2017-02-07
    • 2016-12-16
    • 2018-10-27
    • 2023-04-10
    • 2013-04-15
    • 2019-03-24
    • 1970-01-01
    相关资源
    最近更新 更多