as_fill_carrier | R Documentation |
Filling layouts in bslib are built on the foundation of fillable containers
and fill items (fill carriers are both fillable and fill). This is why most
bslib components (e.g., card()
, card_body()
, layout_sidebar()
) possess
both fillable
and fill
arguments (to control their fill behavior).
However, sometimes it's useful to add, remove, and/or test fillable/fill
properties on arbitrary htmltools::tag()
, which these functions are
designed to do.
as_fill_carrier(
x,
...,
min_height = NULL,
max_height = NULL,
gap = NULL,
class = NULL,
style = NULL,
css_selector = NULL
)
as_fillable_container(
x,
...,
min_height = NULL,
max_height = NULL,
gap = NULL,
class = NULL,
style = NULL,
css_selector = NULL
)
as_fill_item(
x,
...,
min_height = NULL,
max_height = NULL,
class = NULL,
style = NULL,
css_selector = NULL
)
remove_all_fill(x)
is_fill_carrier(x)
is_fillable_container(x)
is_fill_item(x)
x |
An |
... |
Currently ignored. |
min_height , max_height |
Any valid CSS unit
(e.g., |
gap |
Any valid CSS unit. |
class |
A character vector of class names to add to the tag. |
style |
A character vector of CSS properties to add to the tag. |
css_selector |
A character string containing a CSS selector for
targeting particular (inner) tag(s) of interest. For more details on what
selector(s) are supported, see |
Although as_fill()
, as_fillable()
, and as_fill_carrier()
can work with
non-tag objects that have a htmltools::as.tags method (e.g., htmlwidgets),
they return the "tagified" version of that object.
For as_fill()
, as_fillable()
, and as_fill_carrier()
: the tagified
version x
, with relevant tags modified to possess the relevant fill
properties.
For is_fill()
, is_fillable()
, and is_fill_carrier()
: a logical vector,
with length matching the number of top-level tags that possess the relevant
fill properties.
The Filling Layouts article on the bslib website introduces the concept of fillable containers and fill items.
These functions provide a convenient interface to the underlying
htmltools::bindFillRole()
function.
library(shiny)
shinyApp(
page_fillable(
# without `as_fill_carrier()`, the plot won't fill the page because
# `uiOutput()` is neither a fillable container nor a fill item by default.
as_fill_carrier(uiOutput("ui"))
),
function(input, output) {
output$ui <- renderUI({
div(
class = "bg-info text-white",
as_fill_item(),
"A fill item"
)
})
}
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.