2011-06-07 19:10:59 +00:00
<!doctype html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
2012-08-12 00:25:55 +00:00
< title > reveal.js - The HTML Presentation Framework< / title >
2011-12-31 06:33:19 +00:00
2012-08-08 05:14:12 +00:00
< meta name = "description" content = "A framework for easily creating beautiful presentations using HTML" >
2011-12-31 06:33:19 +00:00
< meta name = "author" content = "Hakim El Hattab" >
2012-05-07 02:05:58 +00:00
< meta name = "apple-mobile-web-app-capable" content = "yes" / >
< meta name = "apple-mobile-web-app-status-bar-style" content = "black-translucent" / >
2011-06-07 19:10:59 +00:00
2011-12-05 02:07:33 +00:00
< link href = 'http://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic' rel = 'stylesheet' type = 'text/css' >
2011-06-07 19:10:59 +00:00
< link rel = "stylesheet" href = "css/main.css" >
2012-08-30 04:59:51 +00:00
< link rel = "stylesheet" href = "css/theme/default.css" id = "theme" >
2012-08-08 05:14:12 +00:00
<!-- For syntax highlighting -->
2012-07-10 01:00:51 +00:00
< link rel = "stylesheet" href = "lib/css/zenburn.css" >
2012-08-04 01:49:29 +00:00
2012-08-04 19:45:13 +00:00
< script >
2012-08-12 00:25:55 +00:00
// If the query includes 'print-pdf' we'll use the PDF print sheet
document.write( '< link rel = "stylesheet" href = "css/print/' + ( window.location.search.match( /print-pdf/gi ) ? 'pdf' : 'paper' ) + '.css" type = "text/css" media = "print" > ' );
2012-08-04 19:45:13 +00:00
< / script >
2012-08-04 01:49:29 +00:00
<!-- [if lt IE 9]>
< script src = "lib/js/html5shiv.js" > < / script >
<![endif]-->
2011-06-07 19:10:59 +00:00
< / head >
< body >
2012-06-03 21:30:37 +00:00
< div class = "reveal" >
2012-04-04 04:59:35 +00:00
<!-- Used to fade in a background when a specific slide state is reached -->
< div class = "state-background" > < / div >
2011-06-07 19:10:59 +00:00
2011-12-27 05:29:00 +00:00
<!-- Any section element inside of this container is displayed as a slide -->
< div class = "slides" >
< section >
< h1 > Reveal.js< / h1 >
2012-08-08 05:14:12 +00:00
< h3 > HTML Presentations Made Easy< / h3 >
2011-12-27 05:29:00 +00:00
< / section >
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< h2 > Heads Up< / h2 >
2011-06-07 19:10:59 +00:00
< p >
2012-08-08 05:14:12 +00:00
reveal.js is a framework for easily creating beautiful presentations using HTML. You'll need a browser with
2011-12-27 05:29:00 +00:00
support for CSS 3D transforms to see it in its full glory.
< / p >
< p >
< i > < small > - < a href = "http://hakim.se" > Hakim El Hattab< / a > / < a href = "http://twitter.com/hakimel" > @hakimel< / a > < / small > < / i >
2011-06-07 19:10:59 +00:00
< / p >
2012-06-08 03:21:14 +00:00
< aside class = "notes" >
Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you run the speaker notes server.
< / aside >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
<!-- Example of nested vertical slides -->
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Vertical Slides< / h2 >
< p >
2012-08-04 18:09:06 +00:00
Slides can be nested inside of other slides,
2011-12-27 05:29:00 +00:00
try pressing < a href = "#/2/1" > down< / a > .
< / p >
< a href = "#/2/1" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
< section >
< h2 > Basement Level 1< / h2 >
< p > Press down or up to navigate.< / p >
< / section >
< section >
< h2 > Basement Level 2< / h2 >
< p > Cornify< / p >
2012-01-03 08:24:09 +00:00
< a class = "test" href = "http://cornify.com" >
2012-08-06 02:52:36 +00:00
< img width = "280" height = "326" src = "https://s3.amazonaws.com/hakim-static/reveal-js/cornify.gif" alt = "Unicorn" >
2012-01-03 08:24:09 +00:00
< / a >
2011-12-27 05:29:00 +00:00
< / section >
< section >
< h2 > Basement Level 3< / h2 >
< p > That's it, time to go back up.< / p >
< a href = "#/2" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Up arrow" style = "-webkit-transform: rotate(180deg);" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< h2 > Holistic Overview< / h2 >
< p >
2012-04-28 15:50:22 +00:00
Press < strong > ESC< / strong > to enter the slide overview!
2011-12-27 05:29:00 +00:00
< / p >
2011-12-27 05:57:37 +00:00
< / section >
2012-06-02 21:58:09 +00:00
< section >
< h2 > Works in Mobile Safari< / h2 >
< p >
Try it out! You can swipe through the slides pinch your way to the overview.
< / p >
< / section >
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< h2 > Marvelous Unordered List< / h2 >
< ul >
< li > No order here< / li >
< li > Or here< / li >
< li > Or here< / li >
< li > Or here< / li >
< / ul >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Fantastic Ordered List< / h2 >
< ol >
< li > One is smaller than...< / li >
< li > Two is smaller than...< / li >
< li > Three!< / li >
< / ol >
< / section >
2011-12-05 02:07:33 +00:00
2012-07-31 05:35:16 +00:00
< section data-markdown >
## Markdown support
2012-08-04 18:09:06 +00:00
For those of you who like that sort of thing. Instructions and a bit more info available [here](https://github.com/hakimel/reveal.js#markdown).
2012-07-31 05:35:16 +00:00
< pre > < code contenteditable style = "margin-top: 20px;" > < section data-markdown>
## Markdown support
2012-08-01 03:50:41 +00:00
For those of you who like that sort of thing.
Instructions and a bit more info available [here](https://github.com/hakimel/reveal.js#markdown).
2012-07-31 05:35:16 +00:00
< /section>
< / code > < / pre >
< / section >
< section >
< h2 > Transition Styles< / h2 >
< p >
2012-08-30 05:32:18 +00:00
You can select from different transitions, like: < br >
< a href = "http://lab.hakim.se/reveal-js/?transition=cube" > Cube< / a > -
< a href = "http://lab.hakim.se/reveal-js/?transition=page" > Page< / a > -
< a href = "http://lab.hakim.se/reveal-js/?transition=concave" > Concave< / a > -
< a href = "http://lab.hakim.se/reveal-js/?transition=linear" > Linear< / a >
2012-07-31 05:35:16 +00:00
< / p >
< / section >
2012-08-30 04:59:51 +00:00
< section >
< h2 > Themes< / h2 >
< p >
Reveal.js comes with a few themes built in: < br >
2012-08-30 05:32:18 +00:00
< a href = "http://lab.hakim.se/reveal-js/?theme=sky" > Sky< / a > -
< a href = "http://lab.hakim.se/reveal-js/?theme=beige" > Beige< / a > -
< a href = "http://lab.hakim.se/reveal-js/?theme=simple" > Simple< / a > -
2012-08-30 04:59:51 +00:00
< a href = "http://lab.hakim.se/reveal-js/" > Default< / a >
< / p >
< p >
< small >
* Theme demos are loaded after the presentation which leads to flicker. In production you should load your theme in the < code > < head> < / code > using a < code > < link> < / code > .
< / small >
< / p >
< / section >
2012-04-04 04:59:35 +00:00
< section >
< section data-state = "alert" >
< h2 > Global State< / h2 >
< p >
Set < code > data-state="something"< / code > on a slide and < code > "something"< / code >
2012-08-09 03:00:40 +00:00
will be added as a class to the document element when the slide is open. This lets you
2012-04-04 04:59:35 +00:00
apply broader style changes, like switching the background.
< / p >
< a href = "#/7/1" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
< section data-state = "blackout" >
< h2 > "blackout"< / h2 >
< a href = "#/7/2" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
< section data-state = "soothe" >
< h2 > "soothe"< / h2 >
< a href = "#/7/0" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Up arrow" style = "-webkit-transform: rotate(180deg);" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
2012-03-30 04:13:45 +00:00
< / section >
2012-04-30 14:07:23 +00:00
< section data-state = "customevent" >
< h2 > Custom Events< / h2 >
< p >
Additionally custom events can be triggered on a per slide basis by binding to the < code > data-state< / code > name.
< / p >
2012-05-04 04:01:20 +00:00
< pre > < code contenteditable style = "font-size: 18px; margin-top: 20px;" > Reveal.addEventListener( 'customevent', function() {
2012-07-13 03:08:21 +00:00
console.log( '"customevent" has fired' );
2012-05-01 12:52:56 +00:00
} );
< / code > < / pre >
2012-04-30 14:07:23 +00:00
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Clever Quotes< / h2 >
< p >
These guys come in two forms, inline: < q cite = "http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations" >
The nice thing about standards is that there are so many to choose from< / q > and block:
< / p >
< blockquote cite = "http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations" >
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.
< / blockquote >
< / section >
< section >
< h2 > Pretty Code< / h2 >
< pre > < code contenteditable >
2012-05-01 12:52:56 +00:00
function linkify( selector ) {
2012-07-10 01:48:43 +00:00
if( supports3DTransforms ) {
var nodes = document.querySelectorAll( selector );
2012-08-13 01:46:06 +00:00
for( var i = 0, len = nodes.length; i < len; i++ ) {
2012-07-10 01:48:43 +00:00
var node = nodes[i];
if( !node.className ) ) {
node.className += ' roll';
}
};
}
2012-05-01 12:52:56 +00:00
}
2011-12-27 05:29:00 +00:00
< / code > < / pre >
< p > Courtesy of < a href = "http://softwaremaniacs.org/soft/highlight/en/description/" > highlight.js< / a > .< / p >
< / section >
< section >
< h2 > Intergalactic Interconnections< / h2 >
< p >
2012-08-04 19:45:13 +00:00
You can link between slides internally,
2011-12-27 05:29:00 +00:00
< a href = "#/2/3" > like this< / a > .
< / p >
< / section >
2011-12-05 02:07:33 +00:00
2011-12-27 05:29:00 +00:00
< section >
< h2 > Fragmented Views< / h2 >
< p > Hit the next arrow...< / p >
< p class = "fragment" > ... to step through ...< / p >
< ol >
< li class = "fragment" > < code > any type< / code > < / li >
< li class = "fragment" > < em > of view< / em > < / li >
< li class = "fragment" > < strong > fragments< / strong > < / li >
< / ol >
< / section >
< section >
< h2 > Spectacular image!< / h2 >
< a class = "image" href = "http://hakim.se/experiments/html5/breakdom/" target = "_blank" >
2012-08-06 02:52:36 +00:00
< img width = "320" height = "412" src = "https://s3.amazonaws.com/hakim-static/reveal-js/breakdom.png" alt = "BreakDOM game screenshot" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
2012-08-04 20:16:23 +00:00
< section >
< h2 > Export to PDF< / h2 >
2012-08-04 22:19:50 +00:00
< p > Presentations can be < a href = "https://github.com/hakimel/reveal.js#pdf-export" > exported to PDF< / a > , below is an example that's been uploaded to SlideShare.< / p >
2012-08-13 01:46:06 +00:00
< iframe id = "slideshare" src = "http://www.slideshare.net/slideshow/embed_code/13872948" width = "455" height = "356" style = "margin:0;overflow:hidden;border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen > < / iframe >
< script >
document.getElementById('slideshare').attributeName = 'allowfullscreen';
< / script >
2012-08-04 20:16:23 +00:00
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Stellar Links< / h2 >
< ul >
< li > < a href = "https://github.com/hakimel/reveal.js" > Source code on github< / a > < / li >
< li > < a href = "http://hakim.se/projects/reveal-js" > Read more on my site< / a > < / li >
< li > < a href = "http://twitter.com/hakimel" > Follow me on Twitter< / a > < / li >
< / ul >
< / section >
< section >
< h1 > THE END< / h1 >
2012-08-08 05:14:12 +00:00
< h3 > BY Hakim El Hattab / hakim.se< / h3 >
2011-12-27 05:29:00 +00:00
< / section >
< / div >
<!-- The navigational controls UI -->
< aside class = "controls" >
< a class = "left" href = "#" > ◄ < / a >
< a class = "right" href = "#" > ► < / a >
< a class = "up" href = "#" > ▲ < / a >
< a class = "down" href = "#" > ▼ < / a >
< / aside >
2012-07-21 02:41:08 +00:00
<!-- Presentation progress bar -->
2011-12-27 05:29:00 +00:00
< div class = "progress" > < span > < / span > < / div >
2011-06-07 19:10:59 +00:00
< / div >
2012-03-24 16:48:16 +00:00
2012-07-10 01:00:51 +00:00
< script src = "lib/js/head.min.js" > < / script >
2012-08-12 00:25:55 +00:00
< script src = "js/reveal.min.js" > < / script >
2012-07-10 00:51:04 +00:00
2011-12-05 02:07:33 +00:00
< script >
2012-08-12 00:25:55 +00:00
// Full list of configuration options available here:
// https://github.com/hakimel/reveal.js#configuration
Reveal.initialize({
controls: true,
progress: true,
history: true,
2012-08-30 04:59:51 +00:00
theme: Reveal.getQueryHash().theme || 'default', // available themes are in /css/theme
2012-08-12 00:25:55 +00:00
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/linear(2d)
// Optional libraries used to extend on reveal.js
dependencies: [
{ src: 'lib/js/highlight.js', async: true, callback: function() { window.hljs.initHighlightingOnLoad(); } },
{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
{ src: 'lib/js/showdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: 'lib/js/data-markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
2012-09-03 08:32:31 +00:00
{ src: '/socket.io/socket.io.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } },
2012-08-12 00:25:55 +00:00
{ src: 'plugin/speakernotes/client.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } },
]
});
2012-07-10 00:51:04 +00:00
2012-08-04 19:53:52 +00:00
< / script >
2012-08-01 03:47:09 +00:00
2011-06-07 19:10:59 +00:00
< / body >
2012-08-04 04:33:27 +00:00
< / html >