I am using kables() to output multiple tables from one function in R in a Quarto document rendered with knitr. This works, but the layout is basically merged like one large combined table.
Here is a minimal Quarto markdown file (.qmd)
---
title: "Example"
date: '28 February 2024'
toc: true
number-sections: true
format:
html:
code-fold: true
---
# Example
```{r}
library(knitr)
f <- function() {
kables(
list(
kable(head(iris), caption = "a"),
"<br><br>",
kable(tail(iris), caption = "b")))
}
```
Make the tables.
```{r}
f()
```
What I am hoping to achieve is the same output but rather than being merged to the right, the tables are put down below with a line break. I tried adding breaks in html as part of output but that does not seem to help.
Alternately if there is a better way to write a function in R that would output multiple tables, that would also be fine.

I would use
purrr::walk2for that: