增量幻灯片不适合两列布局



我正在使用 xaringanr包用于演示文稿:

https://cran.r-project.org/web/packages/xaringan/index.html

建立在remark.js库上的。

我想使用两个列布局,即原始remark.js预告片的类似内容:

https://remarkjs.com/

原始css规则(嵌入在演示源中)通过:

指定布局
/* Two-column layout */
.left-column {
  color: #777;
  width: 20%;
  height: 92%;
  float: left;
}
.left-column h2:last-of-type, .left-column h3:last-child {
  color: #000;
}
.right-column {
  width: 75%;
  float: right;
  padding-top: 1em;
}

问题是,当您在其中一列中使用--时,它无法按预期工作 - 它应该触发增量幻灯片...

这确实有效,要点逐渐显示:

# Slide 1
- hello
--
- again
---
# Slide 2
- and one
--
- more

,但在列中它不起作用:

.left-column[
# Column 1
- hello
--
- again]
.right-column[
# Column 2
- and one
--
- more]

接下来,在原始的remark.js css规范中,右列还由

划分
.pull-left {
  float: left;
  width: 47%;
}
.pull-right {
  float: right;
  width: 47%;
}
.pull-right ~ p {
  clear: both;
}

又一次,--不再起作用,在.pull-right/.pull-left类中都没有增量步骤,也不是"之间",即首先显示.pull-left部分,而是.pull-right部分。这些问题确实在原始的remark.js中出现,因此在xaringan软件包中也出现。

毕竟,在右列中至少具有增量幻灯片将是很棒的。有人知道如何解决这个问题吗?我如何修改CSS来实现这一目标?

编辑:

xaringan中的整个标记,即在rstudio中的rmarkdown中写的,然后"编织"为:

---
title: "Title"
author: "Myself"
date: "`r format(Sys.Date(), '%d.%m.%Y')`"
output:
  xaringan::moon_reader:
    css: ["default", "custom.css"]
    nature:
      highlightStyle: dracula
      highlightLines: true
      countIncrementalSlides: false
---
```{r setup, include=FALSE}
options(htmltools.dir.version = FALSE)
```
.left-column[
  ## Left column title
]
.right-column[
 A whole sentence
- one `Markdown` bullet point
--
- a second bullet point
]

在文件 custom.css中,只有左和右列类别没有其他内容,并且从https://remarkjs.com/

中从预告片介绍中复制它们。

它有点黑客,但是您可以使用cond coppl --的备注的模板功能。

--告诉RemandJS将上一个幻灯片用作模板。在模板中,您可以使用{{content}}来确定将下一个内容放在哪里。如果您不这样做,则在模板的末尾附加。这就是为什么--用于增量幻灯片的原因。

如其他答案中所述,您不能在.class[]呼叫中使用--,因为它不是模板。但是,您可以在.class[]内使用{{content}},以便在以前的.class[]中使用--将下一个文本将其放入。

这有点黑客,因为我认为它不会具有复杂的增量逻辑。

---
title: "Title"
author: "Myself"
date: "`r format(Sys.Date(), '%d.%m.%Y')`"
output:
  xaringan::moon_reader:
    css: ["default"]
    nature:
      highlightStyle: dracula
      highlightLines: true
      countIncrementalSlides: false
---
```{r setup, include=FALSE}
options(htmltools.dir.version = FALSE)
```
.left-column[
  ## Left column title
]
.right-column[
 A whole sentence
+ one `Markdown` bullet point
{{content}}
]
--
+ a second bullet point
{{content}}
--
+ a third bullet point
{{content}}
--
    + a sub level

在上一个典范中,右列具有逐渐显示的文本。

您不能使用两个破折号--逐渐显示不完整的元素。当您使用--拆分段落或列表时,该子集仍然是完整且有效的元素。例如,

- One
- Two
--
- Three

项目- One- Two仍然形成完整且有效的列表。但是,当您像.left-column[]这样的列分开时:

.left-column[
One paragraph.
--
Another paragraph.
]

子集不再有效降级:

都不是
.left-column[
One paragraph.

nor

Another paragraph.
]

是有效的降价,因此无法渲染。基本上,当您使用--构建增量幻灯片时,您必须问自己,到目前为止,所有文本是否有效。

在您的情况下,您必须手动重复某些元素才能构建增量幻灯片,这当然不是有效的,但这是唯一要走的方法。如果您研究https://remarkjs.com的来源,您将看到Relect.js的作者,例如,例如,

---
layout: false
.left-column[
  ## What is it?
]
.right-column[
  A simple, in-browser, Markdown-driven slideshow tool targeted at people who know their way around HTML and CSS, featuring:
- Markdown formatting, with smart extensions
....
]
---
.left-column[
  ## What is it?
  ## Why use it?
]
.right-column[
If your ideal slideshow creation workflow contains any of the following steps:
- Just write what's on your mind
....
]
---
.left-column[
  ## What is it?
  ## Why use it?
]
.right-column[
As the slideshow is expressed using Markdown, you may:
- Focus on the content, expressing yourself in next to plain text not worrying what flashy graphics and disturbing effects to put where
....
]

因此,如果在这种情况下,即使是Relect.js的作者也没有魔术,我想对您的问题没有巧妙的解决方案。

最新更新