HTML 演示框架

Created by Hakim El Hattab and contributors

Sponsored by

Hello There

reveal.js enables you to create beautiful interactive slide decks using HTML. This presentation will show you examples of what it can do.

Vertical Slides

Slides can be nested inside of each other.

Use the Space key to navigate through all slides.


Down arrow

Basement Level 1

Nested slides are useful for adding additional detail underneath a high level horizontal slide.

Basement Level 2

That's it, time to go back up.


Up arrow

Slides

Not a coder? Not a problem. There's a fully-featured visual editor for authoring these, try it out at https://slides.com.

Pretty Code


                import React, { useState } from 'react';

                function Example() {
                  const [count, setCount] = useState(0);

                  return (
                    ...
                  );
                }
            

Code syntax highlighting courtesy of highlight.js.

Even Prettier Animations


                import React, { useState } from 'react';

                function Example() {
                  const [count, setCount] = useState(0);

                  return (
                    <div>
                      <p>You clicked {count} times</p>
                      <button onClick={() => setCount(count + 1)}>
                        Click me
                      </button>
                    </div>
                  );
                }

                function SecondExample() {
                  const [count, setCount] = useState(0);

                  return (
                    <div>
                      <p>You clicked {count} times</p>
                      <button onClick={() => setCount(count + 1)}>
                        Click me
                      </button>
                    </div>
                  );
                }
            

Point of View

Press ESC to enter the slide overview.

Hold down the alt key (ctrl in Linux) and click on any element to zoom towards it using zoom.js. Click again to zoom back out.

(NOTE: Use ctrl + click in Linux.)

Auto-Animate

Automatically animate matching elements across slides with Auto-Animate.

Auto-Animate

Auto-Animate

Touch Optimized

Presentations look great on touch devices, like mobile phones and tablets. Simply swipe through your slides.

Add the r-fit-text class to auto-size text

FIT TEXT

Fragments

Hit the next arrow...

... to step through ...

... a fragmented slide.

Fragment Styles

There's different types of fragments, like:

grow

shrink

fade-out

fade-right, up, down, left

fade-in-then-out

fade-in-then-semi-out

Highlight red blue green

Transition Styles

You can select from different transitions, like:
None - Fade - Slide - Convex - Concave - Zoom

Slide Backgrounds

Set data-background="#dddddd" on a slide to change the background color. All CSS color formats are supported.

Down arrow

Image Backgrounds

<section data-background="image.png">

Tiled Backgrounds

<section data-background="image.png" data-background-repeat="repeat" data-background-size="100px">

Video Backgrounds

<section data-background-video="video.mp4,video.webm">

... and GIFs!

Background Transitions

Different background transitions are available via the backgroundTransition option. This one's called "zoom".

Reveal.configure({ backgroundTransition: 'zoom' })

Background Transitions

You can override background transitions per-slide.

<section data-background-transition="zoom">

Iframe Backgrounds

Since reveal.js runs on the web, you can easily embed other web content. Try interacting with the page in the background.

Marvelous List

  • No order here
  • Or here
  • Or here
  • Or here

Fantastic Ordered List

  1. One is smaller than...
  2. Two is smaller than...
  3. Three!

Tabular Tables

ItemValueQuantity
Apples$17
Lemonade$218
Bread$32

Clever Quotes

These guys come in two forms, inline: The nice thing about standards is that there are so many to choose from and block:

“For years there has been a theory that millions of monkeys typing at random on millions of typewriters would reproduce the entire works of Shakespeare. The Internet has proven this theory to be untrue.”

Intergalactic Interconnections

You can link between slides internally, like this.

Speaker View

There's a speaker view. It includes a timer, preview of the upcoming slide as well as your speaker notes.

Press the S key to try it out.

Export to PDF

Presentations can be exported to PDF, here's an example:

Global State

Set data-state="something" on a slide and "something" will be added as a class to the document element when the slide is open. This lets you apply broader style changes, like switching the page background.

State Events

Additionally custom events can be triggered on a per slide basis by binding to the data-state name.


Reveal.on( 'customevent', function() {
  console.log( '"customevent" has fired' );
} );
            

Take a Moment

Press B or . on your keyboard to pause the presentation. This is helpful when you're on stage and want to take distracting slides off the screen.

Much more

THE END

- Try the online editor
- Source code & documentation

在 Web 上创建精美的演示文稿

¥Create Stunning Presentations on the Web

reveal.js 是一个开源 HTML 演示框架。它是一个工具,任何拥有 Web 浏览器的人都可以免费创建功能齐全且精美的演示文稿。

¥reveal.js is an open source HTML presentation framework. It's a tool that enables anyone with a web browser to create fully-featured and beautiful presentations for free.

使用 reveal.js 制作的演示文稿基于开放的 Web 技术构建。这意味着你在 Web 上可以做的任何事情,你都可以在演示文稿中做。使用 CSS 更改样式,使用 <iframe> 包含外部网页,或使用我们的 JavaScript API 添加你自己的自定义行为。

¥Presentations made with reveal.js are built on open web technologies. That means anything you can do on the web, you can do in your presentation. Change styles with CSS, include an external web page using an <iframe> or add your own custom behavior using our JavaScript API.

该框架具有广泛的功能,包括 嵌套幻灯片Markdown 支持自动动画PDF 导出演讲者备注LaTeX 支持语法高亮代码

¥The framework comes with a broad range of features including nested slides, Markdown support, Auto-Animate, PDF export, speaker notes, LaTeX support and syntax highlighted code.

准备好开始了吗?

¥Ready to Get Started?

只需一分钟即可完成设置。了解如何在 安装说明 中创建你的第一个演示文稿!

¥It only takes a minute to get set up. Learn how to create your first presentation in the installation instructions!

在线编辑器

¥Online Editor

如果你想享受 reveal.js 的优势,又不想编写 HTML 或 Markdown 代码,请尝试 [https://slides.com](https://slides.com?ref=github)。它是一个功能齐全的可视化编辑器,也是 reveal.js 的平台,由同一个开发者开发。

¥If you want the benefits of reveal.js without having to write HTML or Markdown try https://slides.com. It's a fully-featured visual editor and platform for reveal.js, by the same creator.

支持 reveal.js

¥Supporting reveal.js

该项目由 @hakimel 在许多 社区贡献 成员的帮助下启动并维护。支持该项目的最佳方式是使用 成为 Slides.com 付费会员 - Hakim 正在构建的 reveal.js 演示平台。

¥This project was started and is maintained by @hakimel with the help of many contributions from the community. The best way to support the project is to become a paying member of Slides.com—the reveal.js presentation platform that Hakim is building.