TypstDocumentation

blockElement
Question mark

A block-level container.

Such a container can be used to separate content, size it, and give it a background or border.

Examples

With a block, you can give a background to content while still allowing it to break across multiple pages.

#set page(height: 100pt)
#block(
  fill: luma(230),
  inset: 8pt,
  radius: 4pt,
  lorem(30),
)
Preview Preview

Blocks are also useful to force elements that would otherwise be inline to become block-level, especially when writing show rules.

#show heading: it => it.body
= Blockless
More text.

#show heading: it => block(it.body)
= Blocky
More text.
Preview

Parameters
Question mark

width
auto or relative
Settable
Question mark

The block's width.

Default: auto

View example
#set align(center)
#block(
  width: 60%,
  inset: 8pt,
  fill: silver,
  lorem(10),
)
Preview

height
auto or relative
Settable
Question mark

The block's height. When the height is larger than the remaining space on a page and breakable is true, the block will continue on the next page with the remaining height.

Default: auto

View example
#set page(height: 80pt)
#set align(center)
#block(
  width: 80%,
  height: 150%,
  fill: aqua,
)
Preview Preview

breakable
bool
Settable
Question mark

Whether the block can be broken and continue on the next page.

Default: true

View example
#set page(height: 80pt)
The following block will
jump to its own page.
#block(
  breakable: false,
  lorem(15),
)
Preview Preview

fill
none or color or gradient or pattern
Settable
Question mark

The block's background color. See the rectangle's documentation for more details.

Default: none

stroke
none or length or color or gradient or stroke or pattern or dictionary
Settable
Question mark

The block's border color. See the rectangle's documentation for more details.

Default: (:)

radius
relative or dictionary
Settable
Question mark

How much to round the block's corners. See the rectangle's documentation for more details.

Default: (:)

inset
relative or dictionary
Settable
Question mark

How much to pad the block's content. See the box's documentation for more details.

Default: (:)

outset
relative or dictionary
Settable
Question mark

How much to expand the block's size without affecting the layout. See the box's documentation for more details.

Default: (:)

spacing
relative or fraction
Settable
Question mark

The spacing around this block. This is shorthand to set above and below to the same value.

Default: 1.2em

View example
#set align(center)
#show math.equation: set block(above: 8pt, below: 16pt)

This sum of $x$ and $y$:
$ x + y = z $
A second paragraph.
Preview

above
relative or fraction
Settable
Question mark

The spacing between this block and its predecessor. Takes precedence over spacing. Can be used in combination with a show rule to adjust the spacing around arbitrary block-level elements.

Default: 1.2em

below
relative or fraction
Settable
Question mark

The spacing between this block and its successor. Takes precedence over spacing.

Default: 1.2em

clip
bool
Settable
Question mark

Whether to clip the content inside the block.

Default: false

body
none or content
Positional
Question mark
Settable
Question mark

The contents of the block.

Default: none