Skip to content

style() constructs a marquee_style object specifying the styling for a single tag. The meaning of NULL is to inherit the value from the parent element. It follows that top parent (the body element), must have values for all it's options. The base_style() constructor is a convenient constructor for a style with sensible defaults for all it's options.

Usage

style(
  family = NULL,
  weight = NULL,
  italic = NULL,
  width = NULL,
  features = NULL,
  size = NULL,
  color = NULL,
  lineheight = NULL,
  align = NULL,
  tracking = NULL,
  indent = NULL,
  hanging = NULL,
  margin = NULL,
  padding = NULL,
  background = NULL,
  border = NULL,
  border_size = NULL,
  border_radius = NULL,
  bullets = NULL,
  underline = NULL,
  strikethrough = NULL,
  baseline = NULL,
  img_asp = NULL
)

base_style(
  family = "",
  weight = "normal",
  italic = FALSE,
  width = "normal",
  features = systemfonts::font_feature(),
  size = 12,
  color = "black",
  lineheight = 1.6,
  align = "left",
  tracking = 0,
  indent = 0,
  hanging = 0,
  margin = trbl(0, 0, rem(1)),
  padding = trbl(0),
  background = NA,
  border = NA,
  border_size = trbl(0),
  border_radius = 0,
  bullets = marquee_bullets,
  underline = FALSE,
  strikethrough = FALSE,
  baseline = 0,
  img_asp = 1.65
)

Arguments

family

The name of the font family to use

weight

The font weight to use. Can either be a number (0, 100, 200, 300, 400, 500, 600, 700, 800, or 900) or a strings ("undefined", "thin", "ultralight", "light", "normal", "medium", "semibold", "bold", "ultrabold", or "heavy")

italic

Should the font be slanted

width

The font width to use. Can either be a number (``0, 1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, or `9`) or strings (`"undefined"`, `"ultracondensed"`, `"extracondensed"`, `"condensed"`, `"semicondensed"`, `"normal"`, `"semiexpanded"`, `"expanded"`, `"extraexpanded"`, or `"ultraexpanded"`)

features

A font_feature object specifying any OpenType font features to apply to the font

size

The size of the font in points. Can be relative() or em() in which case it is based on the parent font size (for size these are equivalent) or rem() in which case it is based on the font size of the body element.

color

Is the color of the font

lineheight

The spacing between subsequent lines relative to the font size. Can be relative() in which case it is based on the parent lineheight.

align

The alignment within the text. One of "left", "center", "right", "justified-left", "justified-center", "justified-right", or "distributed"

tracking

Additional character spacing measured in 1/1000em. Can be relative() in which case it is based on the parent tracking.

indent

The indentation of the first line in a paragraph measured in points. Can be relative() in which case it is based on the parent indent, em() in which case it is based on the font size in this style, or rem() in which case it is based on the font size of the body element.

hanging

The indentation of all but the first line in a paragraph measured in points. Can be relative() in which case it is based on the parent hanging, em() in which case it is based on the font size in this style, or rem() in which case it is based on the font size of the body element.

margin

The margin around the element, given as a call to trbl()

padding

The padding around the element, given as a call to trbl()

background

The color of the background fill. The background includes the padding but not the margin. Can be a solid color or a gradient or pattern made with grid::linearGradient()/grid::radialGradient()/grid::pattern()

border

The color of the background stroke. The background includes the padding but not the margin

border_size

The line width of the background stroke, given as a call to trbl()

border_radius

The corner radius of the background, given in points

bullets

A vector of strings to use for bullets in unordered lists. marquee_bullets provides a selection

underline

Should text be underlined

strikethrough

Should text be strikethrough

baseline

The baseline shift to apply to the text

img_asp

The default aspect ratio for block level images if not provided by the image itself

Value

A marquee_style object

Examples

# A partial style
style(color = "red", underline = TRUE)
#> <marquee_style[2]>
#>     color: red
#> underline: TRUE

# Full style
base_style()
#> <marquee_style[32]>
#>               size: 12
#>         background: NA
#>              color: black
#>             family: 
#>             weight: 400
#>             italic: FALSE
#>              width: 5
#>           features: <empty>
#>         lineheight: 1.6
#>              align: left
#>           tracking: 0
#>             indent: 0
#>            hanging: 0
#>         margin_top: 0
#>       margin_right: 0
#>      margin_bottom: rem(1)
#>        margin_left: 0
#>        padding_top: 0
#>      padding_right: 0
#>     padding_bottom: 0
#>       padding_left: 0
#>             border: NA
#>    border_size_top: 0
#>  border_size_right: 0
#> border_size_bottom: 0
#>   border_size_left: 0
#>      border_radius: 0
#>            bullets: •, ◦, ▪, ▫, ‣, ⁃
#>          underline: FALSE
#>      strikethrough: FALSE
#>           baseline: 0
#>            img_asp: 1.65