减少标题和表格之间的填充

Reduce padding between captions and tables

我正在使用 flextable 遍历数据列表,为列表中的每个元素生成标题和 tables,以在 [= 中生成 tables 11=] 文件。虽然我可以成功渲染字幕和 tables,但字幕和 tables 之间的 padding/margins 太大,我找不到减少它们的方法。这是我目前所拥有的:

---
title: "Untitled"
output: html_document
date: '2022-05-09'
---

``{r setup, include=FALSE}
library(flextable)
library(magrittr)
``

``{r results='asis', echo=FALSE, ft.align="left"}

my_list<-list()
my_list$ds1<-head(mtcars, 5)
my_list$ds2<-head(mtcars, 10)

for (i in 1:length(my_list)) {
  
  myft <- flextable(my_list[[i]]) %>% 
    set_caption(paste("Caption ", i))
  
  flextable_to_rmd(myft)
  
}
``

我想也许使用 flextable::padding() 会有所帮助,但这似乎只能控制 table 行内的填充,而不是页面上元素之间的间距。

请注意,我在上面的代码示例中删除了一些必需的降价反引号,以便它可以在 Whosebug 上正确呈现。

将此添加到您的 RMD。不要将它放在代码块中 - 只需将它放在其他地方 free-write.

<style>
caption {
  padding-bottom: 0px;
}
</style>

现在标题写在 p 标签中,被标题标签包围,被更多的 p 标签包围,所有这些都有 padding、margin 和 line-height 规格。这可以让您事半功倍(IMO)。