【发布时间】:2021-08-17 09:24:29
【问题描述】:
我目前正在为 R 建模研讨会准备 html 幻灯片,为此我使用了用于 R 的很棒的 xaringan 包。它基于remark.js。与 ioslides 和 slidy 相比,它确实更符合我的期望。我非常兴奋!我错过的一项功能是可滚动的“长幻灯片”。在这里,我当然将“幻灯片”范式转向幻灯片和普通网页之间的混合,但我发现这在解释复杂的内容和代码方面具有教学吸引力。这种风格与 slidy 配合得很好,我还发现了一些提示如何在 xaringan 中启用可滚动代码。
这里我使用以下 CSS(在 related post at SO 中找到):
.scrollable {
height: 80%;
overflow-y: auto;
}
然后在 RMarkdown 代码块中类似于:
.scrollable[
```{r}
foo <- function() {
cat("nothing\n")
}
foo()
foo()
foo()
foo()
foo()
foo()
foo()
foo()
foo()
foo()
## some comments ...
# ...
foo()
```
]
长幻灯片
我的意思是网页可以向下滚动,但仍然嵌入在幻灯片放映中。
代码示例
一个带有可滚动代码的示例在幻灯片中在这里很受欢迎:
- 代码:https://github.com/dynamic-R/hacking-limnology/blob/main/docs/test.Rmd
- 演示:https://dynamic-r.github.io/hacking-limnology/test.html#3
它部分工作,但我还没有完全满意:
- 我更喜欢真正的“长幻灯片”而不是可滚动的文本。
- 与其用
.scrollable[]括起来,我更喜欢一个完整的幻灯片类 - 它仅适用于 Chrome、Edge(和 RStudio 的 Infinite Moon Reader),但不适用于 Firefox。 编辑: 绝对
heigt适用于 Firefox(感谢 @Waldi 的评论)
CSS 方法取自 a related post at SO,其中还包含指向其他方法的链接(部分使用额外的 JavaScript),但我无法让它们运行。
问题
任何想法,如何:
- 定义一个带有可滚动内容的 xaringan 幻灯片类或
- 将幻灯片定义为真正的“长幻灯片”,即长 html 页面
“具有可滚动内容的幻灯片类”或“长幻灯片”类的定义如下:
---
class: scrollable-slide
类似于:
---
layout: false
class: inverse, middle, center
【问题讨论】:
-
请注意,如果您设置固定的
height而不是百分比,.scrollable也适用于 Firefox。 -
谢谢,一个很小但确实很重要的提示。我记得 Firefox 似乎在一种情况下工作,但我做了太多的试验和错误......
-
xaringan 幻灯片类是什么意思?你的意思是remark class property?
-
我的意思是可以放在
---幻灯片分隔符下方的类定义。感谢您的评论,我相应地编辑了问题。
标签: html css r rstudio xaringan