themen-hugo-35c3-reveal/exampleSite/content/home/shortcodes/slide.md

3.7 KiB

+++ weight = 34 +++

Slide

Use this shortcode when you need to customize slide attributes like id, class, background color and transition.


{{< slide class="hello" >}}

Slide

Add the shortcode above the slide's content, below the ---.

---

{{</* slide class="hello" */>}}

## Hello, world!

---

{{< slide transition="zoom" transition-speed="fast" >}}

Custom slide 1

Did you notice? This slide has a fast zoom transition.

---

{{</* slide transition="zoom" transition-speed="fast" */>}}

## Custom slide 1

---

{{< slide background-color="#FF4081" >}}

Custom slide 2

This slide has a different background color.

---

{{</* slide background-color="#FF4081" */>}}

## Custom slide 2

---

{{< slide background-image="/images/alex-litvin-790876-unsplash.jpg" background-color="#000000" >}}

Custom slide 3

This slide has a background image.

---

{{</* slide background-image="/images/alex-litvin-790876-unsplash.jpg" */>}}

---

(credit Alex Litvin)


{{< slide id="custom-slide" >}}

💡 Tip: Setting a slide's id attribute makes it easy to link to from other parts of the presentation.

---

{{</* slide id="custom-slide" */>}}

## Custom slide

---

[Try the link](#custom-slide)

[Try the link](#custom-slide)

Slide attribute possibilities from the Reveal.js docs:

  • autoslide
  • state
  • background
  • background-color
  • background-image
  • background-size
  • background-position
  • background-repeat

  • background-video
  • background-video-loop
  • background-video-muted
  • background-interactive
  • background-iframe
  • background-transition
  • transition (can have different in and out transitions)
  • transition-speed
  • notes (can also use the note shortcode)
  • timing

{{% section %}}

Slide templates

Store sets of common slide attributes in front matter variables and apply them to slides with the template attribute.


navigate down to learn more
🔽

Create templates in config.toml, _index.md or the current page's front matter. Put them under the templates key with a meaningful name:

[reveal_hugo.templates.hotpink]
class = "hotpink"
background = "#FF4081"

{{< slide template="hotpink" >}}

Apply the template using the template attribute of the slide shortcode:

{{</* slide template="hotpink" */>}}

# I'm a hot pink slide!

If a template exists in multiple configurations, it's properties will be merged. If a property is declared multiple times, the order of precedence is:

  • page
  • section (_index.md)
  • site (config.toml)

{{% /section %}}


{{% section %}}

{{< slide content="home.reusable" >}}

{{% /section %}}


{{% section %}}

Slide-specific CSS

Add more variety to your presentation by applying slide-specific CSS.


navigate down to learn more
🔽

First, use the slide shortcode to give the slide a class:

---

{{</* slide class="side-by-side" */>}}

# 📈

# 📊

---

Next, use a layout extension partial like reveal-hugo/head.html to add CSS selectors:

<style>
.reveal section.side-by-side h1 {
  position: absolute;
}
.reveal section.side-by-side h1:first-of-type {
  left: 25%;
}
.reveal section.side-by-side h1:nth-of-type(2) {
  right: 25%;
}
</style>

{{< slide class="side-by-side" >}}

📈

📊

{{% /section %}}