.docname {Markdown content}
.include {docs}

Many functions accept rich Quarkdown content as their argument.

## Block content

Body parameters usually accept *block content*, which refers to one or more *block* elements that Quarkdown supports. This includes paragraphs, headings, code blocks, quotes, [block function calls](syntax-of-a-function-call.qd#block-vs-inline-function-calls), and more.
Inner *inline* elements are processed as well.

In other words, everything you can express with Quarkdown *outside* a function call will also work here.

```markdown
.center
    # My centered title

    This is a paragraph in a **centered** block!

    > This is a _blockquote_.
    >
    > It spans over multiple sub-paragraphs.

    <!-- A nested block function call -->
    .row
        ...
```
> See more: [`.center`](align.qd), [`.row`](stacks.qd)

## Inline content

*Inline content* strictly accepts inline data and ignores any block syntax. This includes plain text, strong (bold), emphasis (italics), code spans, links, images, [inline math](tex-formulae.qd), [inline function calls](syntax-of-a-function-call.qd#block-vs-inline-function-calls), and more.

```markdown
.box {My _box_ title}
    ...
```
> See more: [`.box`](box.qd)

Block syntax has no effect where inline content is required. In the following example, *# My box* is parsed as plain text, since headings are block elements.

```markdown
.box {# My box}
    ...
```

Inline function calls are accepted:

```markdown
.box {3 + 2 is .sum {3} {2}}
    ...
```

> See more: [`.sum`](math.qd)

In general, everything that can appear inside a paragraph can also go into an inline argument.