如何避免项目符号列表中的代码块增加垂直行间距?

How to avoid code blocks within bullet list increasing the vertical line spacing?

有了设置

output:
  github_document:
    toc: true
    number_sections: true

```{r, include=FALSE}
knitr::opts_chunk$set(collapse = TRUE)
```

比较

# Test
* foo
* bar
* boo

有输出

# Test
* foo
  ```{r, echo = TRUE}
  print("eg")
  ```
* bar
* boo

有输出

我们可以看到垂直间距已经改变,没有任何命令这样做。如何预防?

考虑这个快速解决方法:

---
output:
  github_document:
    toc: true
    number_sections: true
---

```{css, echo = FALSE}
li>p {
    margin-top: 0;     # default value: 16px
  }
p, blockquote, ul, ol, dl, table, pre {
    margin-bottom: 0;  # default value: 16px
  }
```

```{r, include = FALSE}
knitr::opts_chunk$set(collapse = TRUE)
```

输出:

默认情况下,R Markdown 中的代码块包含在 HTML 输出的标记 <div class="..." /> 中。当 <div> 元素嵌入到列表中时,项目内容 (foo) 将被包裹在 <p> 标签中。所以,我们需要设置它的 CSS 属性: margin-topmargin-bottom0.

<ul>
    <li>
        <p>foo</p>
        <div class="sourceCode" id="...">...</div>
    </li>
    .
    .
</ul>