restructoring of repo
155
website/demo/css/impress-common.css
Normal file
@@ -0,0 +1,155 @@
|
||||
/* impress.js doesn't require any particular CSS file.
|
||||
Each author should create their own, to achieve the visual style they want.
|
||||
Yet in practice many plugins will not do anything useful without CSS. (See for example mouse-timeout plugin.)
|
||||
This file contains sample CSS that you may want to use in your presentation.
|
||||
It is focused on plugin functionality, not the visual style of your presentation. */
|
||||
|
||||
/* Using the substep plugin, hide bullet points at first, then show them one by one. */
|
||||
#impress .step .substep {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
#impress .step .substep.substep-visible {
|
||||
opacity: 1;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
/*
|
||||
Speaker notes allow you to write comments within the steps, that will not
|
||||
be displayed as part of the presentation. However, they will be picked up
|
||||
and displayed by impressConsole.js when you press P.
|
||||
*/
|
||||
.notes {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Toolbar plugin */
|
||||
.impress-enabled div#impress-toolbar {
|
||||
position: fixed;
|
||||
right: 1px;
|
||||
bottom: 1px;
|
||||
opacity: 0.6;
|
||||
z-index: 10;
|
||||
}
|
||||
.impress-enabled div#impress-toolbar > span {
|
||||
margin-right: 10px;
|
||||
}
|
||||
.impress-enabled div#impress-toolbar.impress-toolbar-show {
|
||||
display: block;
|
||||
}
|
||||
.impress-enabled div#impress-toolbar.impress-toolbar-hide {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Progress bar */
|
||||
.impress-progress {
|
||||
position: absolute;
|
||||
left: 59px;
|
||||
bottom: 1px;
|
||||
text-align: left;
|
||||
font-size: 10pt;
|
||||
opacity: 0.6;
|
||||
}
|
||||
.impress-enabled .impress-progressbar {
|
||||
position: absolute;
|
||||
right: 318px;
|
||||
bottom: 1px;
|
||||
left: 118px;
|
||||
border-radius: 7px;
|
||||
border: 2px solid rgba(100, 100, 100, 0.2);
|
||||
}
|
||||
.impress-progressbar {
|
||||
right: 118px;
|
||||
}
|
||||
.impress-progressbar DIV {
|
||||
width: 0;
|
||||
height: 2px;
|
||||
border-radius: 5px;
|
||||
background: rgba(75, 75, 75, 0.4);
|
||||
transition: width 1s linear;
|
||||
}
|
||||
.impress-enabled .impress-progress {
|
||||
position: absolute;
|
||||
left: 59px;
|
||||
bottom: 1px;
|
||||
text-align: left;
|
||||
opacity: 0.6;
|
||||
}
|
||||
.impress-enabled #impress-help {
|
||||
background: none repeat scroll 0 0 rgba(0, 0, 0, 0.5);
|
||||
color: #EEEEEE;
|
||||
font-size: 80%;
|
||||
position: fixed;
|
||||
left: 2em;
|
||||
bottom: 2em;
|
||||
width: 24em;
|
||||
border-radius: 1em;
|
||||
padding: 1em;
|
||||
text-align: center;
|
||||
z-index: 100;
|
||||
font-family: Verdana, Arial, Sans;
|
||||
}
|
||||
.impress-enabled #impress-help td {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
/*
|
||||
With help from the mouse-timeout plugin, we can hide the toolbar and
|
||||
have it show only when you move/click/touch the mouse.
|
||||
*/
|
||||
body.impress-mouse-timeout div#impress-toolbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/*
|
||||
In fact, we can hide the mouse cursor itself too, when mouse isn't used.
|
||||
*/
|
||||
body.impress-mouse-timeout {
|
||||
cursor: none;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
And as the last thing there is a workaround for quite strange bug.
|
||||
It happens a lot in Chrome. I don't remember if I've seen it in Firefox.
|
||||
|
||||
Sometimes the element positioned in 3D (especially when it's moved back
|
||||
along Z axis) is not clickable, because it falls 'behind' the <body>
|
||||
element.
|
||||
|
||||
To prevent this, I decided to make <body> non clickable by setting
|
||||
pointer-events property to `none` value.
|
||||
Value if this property is inherited, so to make everything else clickable
|
||||
I bring it back on the #impress element.
|
||||
|
||||
If you want to know more about `pointer-events` here are some docs:
|
||||
https://developer.mozilla.org/en/CSS/pointer-events
|
||||
|
||||
There is one very important thing to notice about this workaround - it makes
|
||||
everything 'unclickable' except what's in #impress element.
|
||||
|
||||
So use it wisely ... or don't use at all.
|
||||
*/
|
||||
|
||||
.impress-enabled { pointer-events: none }
|
||||
.impress-enabled #impress { pointer-events: auto }
|
||||
|
||||
/*If you disable pointer-events, you need to re-enable them for the toolbar.
|
||||
And the speaker console while at it.*/
|
||||
|
||||
.impress-enabled #impress-toolbar { pointer-events: auto }
|
||||
.impress-enabled #impress-console-button { pointer-events: auto }
|
||||
|
||||
|
||||
/*
|
||||
There is one funny thing I just realized.
|
||||
|
||||
Thanks to this workaround above everything except #impress element is invisible
|
||||
for click events. That means that the hint element is also not clickable.
|
||||
So basically all of this transforms and delayed transitions trickery was probably
|
||||
not needed at all...
|
||||
|
||||
But it was fun to learn about it, wasn't it?
|
||||
*/
|
||||
|
||||
|
||||
674
website/demo/css/impress-demo.css
Normal file
@@ -0,0 +1,674 @@
|
||||
/*
|
||||
So you like the style of impress.js demo?
|
||||
Or maybe you are just curious how it was done?
|
||||
|
||||
You couldn't find a better place to find out!
|
||||
|
||||
Welcome to the stylesheet impress.js demo presentation.
|
||||
|
||||
Please remember that it is not meant to be a part of impress.js and is
|
||||
not required by impress.js.
|
||||
I expect that anyone creating a presentation for impress.js would create
|
||||
their own set of styles.
|
||||
|
||||
But feel free to read through it and learn how to get the most of what
|
||||
impress.js provides.
|
||||
|
||||
And let me be your guide.
|
||||
|
||||
Shall we begin?
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
We start with a good ol' reset.
|
||||
That's the one by Eric Meyer http://meyerweb.com/eric/tools/css/reset/
|
||||
|
||||
You can probably argue if it is needed here, or not, but for sure it
|
||||
doesn't do any harm and gives us a fresh start.
|
||||
*/
|
||||
|
||||
html, body, div, span, applet, object, iframe,
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
||||
a, abbr, acronym, address, big, cite, code,
|
||||
del, dfn, em, img, ins, kbd, q, s, samp,
|
||||
small, strike, strong, sub, sup, tt, var,
|
||||
b, u, i, center,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td,
|
||||
article, aside, canvas, details, embed,
|
||||
figure, figcaption, footer, header, hgroup,
|
||||
menu, nav, output, ruby, section, summary,
|
||||
time, mark, audio, video {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
font-size: 100%;
|
||||
font: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/* HTML5 display-role reset for older browsers */
|
||||
article, aside, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section {
|
||||
display: block;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: none;
|
||||
}
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
Now here is when interesting things start to appear.
|
||||
|
||||
We set up <body> styles with default font and nice gradient in the background.
|
||||
And yes, there is a lot of repetition there because of -prefixes but we don't
|
||||
want to leave anybody behind.
|
||||
*/
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: rgb(215, 215, 215);
|
||||
background: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 500, from(rgb(240, 240, 240)), to(rgb(190, 190, 190)));
|
||||
background: -webkit-radial-gradient(rgb(240, 240, 240), rgb(190, 190, 190));
|
||||
background: -moz-radial-gradient(rgb(240, 240, 240), rgb(190, 190, 190));
|
||||
background: -ms-radial-gradient(rgb(240, 240, 240), rgb(190, 190, 190));
|
||||
background: -o-radial-gradient(rgb(240, 240, 240), rgb(190, 190, 190));
|
||||
background: radial-gradient(rgb(240, 240, 240), rgb(190, 190, 190));
|
||||
}
|
||||
|
||||
/*
|
||||
Now let's bring some text styles back ...
|
||||
*/
|
||||
b, strong { font-weight: bold }
|
||||
i, em { font-style: italic }
|
||||
|
||||
/*
|
||||
... and give links a nice look.
|
||||
*/
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
padding: 0 0.1em;
|
||||
background: rgba(255,255,255,0.5);
|
||||
text-shadow: -1px -1px 2px rgba(100,100,100,0.9);
|
||||
border-radius: 0.2em;
|
||||
|
||||
-webkit-transition: 0.5s;
|
||||
-moz-transition: 0.5s;
|
||||
-ms-transition: 0.5s;
|
||||
-o-transition: 0.5s;
|
||||
transition: 0.5s;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
background: rgba(255,255,255,1);
|
||||
text-shadow: -1px -1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
/*
|
||||
Because the main point behind the impress.js demo is to demo impress.js
|
||||
we display a fallback message for users with browsers that don't support
|
||||
all the features required by it.
|
||||
|
||||
All of the content will be still fully accessible for them, but I want
|
||||
them to know that they are missing something - that's what the demo is
|
||||
about, isn't it?
|
||||
|
||||
And then we hide the message, when support is detected in the browser.
|
||||
*/
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/*
|
||||
Now let's style the presentation steps.
|
||||
|
||||
We start with basics to make sure it displays correctly in everywhere ...
|
||||
*/
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 900px;
|
||||
padding: 40px;
|
||||
margin: 20px auto;
|
||||
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
-ms-box-sizing: border-box;
|
||||
-o-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
|
||||
font-family: 'PT Serif', georgia, serif;
|
||||
font-size: 48px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
/*
|
||||
... and we enhance the styles for impress.js.
|
||||
|
||||
Basically we remove the margin and make inactive steps a little bit transparent.
|
||||
*/
|
||||
.impress-enabled .step {
|
||||
margin: 0;
|
||||
opacity: 0.3;
|
||||
|
||||
-webkit-transition: opacity 1s;
|
||||
-moz-transition: opacity 1s;
|
||||
-ms-transition: opacity 1s;
|
||||
-o-transition: opacity 1s;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
|
||||
.impress-enabled .step.active { opacity: 1 }
|
||||
|
||||
/*
|
||||
These 'slide' step styles were heavily inspired by HTML5 Slides:
|
||||
http://html5slides.googlecode.com/svn/trunk/styles.css
|
||||
|
||||
;)
|
||||
|
||||
They cover everything what you see on first three steps of the demo.
|
||||
|
||||
All impress.js steps are wrapped inside a div element of 0 size! This means that relative
|
||||
values for width and height (example: `width: 100%`) will not work. You need to use pixel
|
||||
values. The pixel values used here correspond to the data-width and data-height given to the
|
||||
#impress root element. When the presentation is viewed on a larger or smaller screen, impress.js
|
||||
will automatically scale the steps to fit the screen.
|
||||
*/
|
||||
.slide {
|
||||
display: block;
|
||||
|
||||
width: 900px;
|
||||
height: 700px;
|
||||
padding: 40px 60px;
|
||||
|
||||
background-color: white;
|
||||
border: 1px solid rgba(0, 0, 0, .3);
|
||||
border-radius: 10px;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
|
||||
|
||||
color: rgb(102, 102, 102);
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
|
||||
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 30px;
|
||||
line-height: 36px;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
.slide q {
|
||||
display: block;
|
||||
font-size: 50px;
|
||||
line-height: 72px;
|
||||
|
||||
margin-top: 100px;
|
||||
}
|
||||
|
||||
.slide q strong {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/*
|
||||
And now we start to style each step separately.
|
||||
|
||||
I agree that this may be not the most efficient, object-oriented and
|
||||
scalable way of styling, but most of steps have quite a custom look
|
||||
and typography tricks here and there, so they had to be styled separately.
|
||||
|
||||
First is the title step with a big <h1> (no room for padding) and some
|
||||
3D positioning along Z axis.
|
||||
*/
|
||||
|
||||
#title {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#title .try {
|
||||
font-size: 64px;
|
||||
position: absolute;
|
||||
top: -0.5em;
|
||||
left: 1.5em;
|
||||
|
||||
-webkit-transform: translateZ(20px);
|
||||
-moz-transform: translateZ(20px);
|
||||
-ms-transform: translateZ(20px);
|
||||
-o-transform: translateZ(20px);
|
||||
transform: translateZ(20px);
|
||||
}
|
||||
|
||||
#title h1 {
|
||||
font-size: 180px;
|
||||
|
||||
-webkit-transform: translateZ(50px);
|
||||
-moz-transform: translateZ(50px);
|
||||
-ms-transform: translateZ(50px);
|
||||
-o-transform: translateZ(50px);
|
||||
transform: translateZ(50px);
|
||||
}
|
||||
|
||||
#title .footnote {
|
||||
font-size: 32px;
|
||||
}
|
||||
|
||||
/*
|
||||
Second step is nothing special, just a text with a link, so it doesn't need
|
||||
any special styling.
|
||||
|
||||
Let's move to 'big thoughts' with centered text and custom font sizes.
|
||||
*/
|
||||
#big {
|
||||
width: 600px;
|
||||
text-align: center;
|
||||
font-size: 60px;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
#big strong,
|
||||
#big b {
|
||||
display: block;
|
||||
font-size: 250px;
|
||||
line-height: 250px;
|
||||
}
|
||||
|
||||
#big .thoughts {
|
||||
font-size: 90px;
|
||||
line-height: 150px;
|
||||
}
|
||||
|
||||
/*
|
||||
'Tiny ideas' just need some tiny styling.
|
||||
*/
|
||||
#tiny {
|
||||
width: 500px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/*
|
||||
This step has some animated text ...
|
||||
*/
|
||||
#ing { width: 500px }
|
||||
|
||||
/*
|
||||
... so we define display to `inline-block` to enable transforms and
|
||||
transition duration to 0.5s ...
|
||||
*/
|
||||
#ing b {
|
||||
display: inline-block;
|
||||
-webkit-transition: 0.5s;
|
||||
-moz-transition: 0.5s;
|
||||
-ms-transition: 0.5s;
|
||||
-o-transition: 0.5s;
|
||||
transition: 0.5s;
|
||||
}
|
||||
|
||||
/*
|
||||
... and we want 'positioning` word to move up a bit when the step gets
|
||||
`present` class ...
|
||||
*/
|
||||
#ing.present .positioning {
|
||||
-webkit-transform: translateY(-10px);
|
||||
-moz-transform: translateY(-10px);
|
||||
-ms-transform: translateY(-10px);
|
||||
-o-transform: translateY(-10px);
|
||||
transform: translateY(-10px);
|
||||
}
|
||||
|
||||
/*
|
||||
... 'rotating' to rotate a quarter of a second later ...
|
||||
*/
|
||||
#ing.present .rotating {
|
||||
-webkit-transform: rotate(-10deg);
|
||||
-moz-transform: rotate(-10deg);
|
||||
-ms-transform: rotate(-10deg);
|
||||
-o-transform: rotate(-10deg);
|
||||
transform: rotate(-10deg);
|
||||
|
||||
-webkit-transition-delay: 0.25s;
|
||||
-moz-transition-delay: 0.25s;
|
||||
-ms-transition-delay: 0.25s;
|
||||
-o-transition-delay: 0.25s;
|
||||
transition-delay: 0.25s;
|
||||
}
|
||||
|
||||
/*
|
||||
... and 'scaling' to scale down after another quarter of a second.
|
||||
*/
|
||||
#ing.present .scaling {
|
||||
-webkit-transform: scale(0.7);
|
||||
-moz-transform: scale(0.7);
|
||||
-ms-transform: scale(0.7);
|
||||
-o-transform: scale(0.7);
|
||||
transform: scale(0.7);
|
||||
|
||||
-webkit-transition-delay: 0.5s;
|
||||
-moz-transition-delay: 0.5s;
|
||||
-ms-transition-delay: 0.5s;
|
||||
-o-transition-delay: 0.5s;
|
||||
transition-delay: 0.5s;
|
||||
}
|
||||
|
||||
/*
|
||||
The 'imagination' step is again some boring font-sizing.
|
||||
*/
|
||||
|
||||
#imagination {
|
||||
width: 600px;
|
||||
}
|
||||
|
||||
#imagination .imagination {
|
||||
font-size: 78px;
|
||||
}
|
||||
|
||||
/*
|
||||
There is nothing really special about 'use the source, Luke' step, too,
|
||||
except maybe of the Yoda background.
|
||||
|
||||
As you can see below I've 'hard-coded' it in data URL.
|
||||
That's not the best way to serve images, but because that's just this one
|
||||
I decided it will be OK to have it this way.
|
||||
|
||||
Just make sure you don't blindly copy this approach.
|
||||
*/
|
||||
#source {
|
||||
width: 700px;
|
||||
padding-bottom: 300px;
|
||||
|
||||
/* Yoda Icon :: Pixel Art from Star Wars http://www.pixeljoint.com/pixelart/1423.htm */
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARgAAAEYCAMAAACwUBm+AAAAAXNSR0IArs4c6QAAAKtQTFRFsAAAvbWSLUUrLEQqY1s8UYJMqJ1vNTEgOiIdIzYhjIFVLhsXZ6lgSEIsP2U8JhcCVzMsSXZEgXdOO145XJdWOl03LzAYMk4vSXNExr+hwcuxRTs1Qmk+RW9Am49eFRANQz4pUoNMQWc+OSMDTz0wLBsCNVMxa2NBOyUDUoNNSnlEWo9VRGxAVzYFl6tXCggHbLNmMUIcHhwTXkk5f3VNRT8wUT8xAAAACQocRBWFFwAAAAF0Uk5TAEDm2GYAAAPCSURBVHja7d3JctNAFIZRMwRCCGEmzPM8z/D+T8bu/ptbXXJFdij5fMt2Wuo+2UgqxVmtttq5WVotLzBgwIABAwYMGDCn0qVqbo69psPqVpWx+1XG5iaavF8wYMCAAQMGDBgwi4DJ6Y6qkxB1HNlcN3a92gbR5P2CAQMGDBgwYMCAWSxMlrU+UY5yu2l9okfV4bAxUVbf7TJnAwMGDBgwYMCAAbMLMHeqbGR82Zy+VR1Ht81nVca6R+UdTLaU24Ruzd3qM/e4yjnAgAEDBgwYMGDA7AJMd1l/3NRdVGcj3eX/2WEhCmDGxnM7yqygu8XIPjJj8iN/MGDAgAEDBgwYMAuDGb8q0RGlLCHLv1t9qDKWn3vdNHVuEI6HPaxO9Jo3GDBgwIABAwYMmIXBdC9ShGgMk+XnkXUeuGcsP/e1+lhNnZsL/G5Vs3OAAQMGDBgwYMCAWSxMR3SzOmraG5atdy9wZKzb+vg16qyqe2FltbnAgAEDBgwYMGDALAxmTJSuN3WA76rnVca6GTnemGN1WoEBAwYMGDBgwIBZGMxUomy4+xO899V4LAg5Xnc2MGDAgAEDBgwYMGA218Wq+2K1LDqvY9xZu8zN8fICdM6btYABAwYMGDBgwIABMzfH0+pGU5afze2tXebmeAfVz+p8BQYMGDBgwIABAwbMPBzZ+oWmfJrln1273FhkbHzee9WWbw7AgAEDBgwYMGDALAKm43hcdctKgblcPamOhuXnXlY5Xs6bsW4FGyQCAwYMGDBgwIABswiYMceZKgvMo+h8mrHLTdn676rj+FEFoTtHd8MwOxEYMGDAgAEDBgyYRcBM5UhXqiymW3R3c9ARhWO/OmjqfjVZy+xEYMCAAQMGDBgwYBYG073OnCV0RFNhMhaOa9WfKmOB6XjHMN1tQmaAAQMGDBgwYMCA2VWY7vXjz1U4croAzgPztwIDBgwYMGDAgAEDZhswh035NBw59Dww3RgYMGDAgAEDBgwYMJuD6f4tXT7NUqfCdBvZLkxXdgQGDBgwYMCAAQNmt2DGj8WzwAfV/w7T/aq7mxwwYMCAAQMGDBgwuwqTOo7uTwTngflSzQ3TdaJvAwEDBgwYMGDAgAED5gSvgbyo5oHZ4Pc+gwEDBgwYMGDAgAEzhOm+5G0qTGaAAQMGDBgwYMCAAXNaMOcnls3tNwWm+zRzp54NDBgwYMCAAQMGDJh5YNL36k1TLuGvVq+qnKMbS5n7tulT9asCAwYMGDBgwIABA2ZumKuztLnjgQEDBgwYMGDAgNl5mH/4/ltKA6vBNAAAAABJRU5ErkJggg==);
|
||||
background-position: bottom right;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
#source q {
|
||||
font-size: 60px;
|
||||
}
|
||||
|
||||
/*
|
||||
And the "it's in 3D" step again brings some 3D typography - just for fun.
|
||||
|
||||
Because we want to position <span> elements in 3D we set transform-style to
|
||||
`preserve-3d` on the paragraph.
|
||||
It is not needed by webkit browsers, but it is in Firefox. It's hard to say
|
||||
which behaviour is correct as 3D transforms spec is not very clear about it.
|
||||
*/
|
||||
#its-in-3d p {
|
||||
-webkit-transform-style: preserve-3d;
|
||||
-moz-transform-style: preserve-3d; /* Y U need this Firefox?! */
|
||||
-ms-transform-style: preserve-3d;
|
||||
-o-transform-style: preserve-3d;
|
||||
transform-style: preserve-3d;
|
||||
}
|
||||
|
||||
/*
|
||||
Below we position each word separately along Z axis and we want it to transition
|
||||
to default position in 0.5s when the step gets `present` class.
|
||||
|
||||
Quite a simple idea, but lot's of styles and prefixes.
|
||||
*/
|
||||
#its-in-3d span,
|
||||
#its-in-3d b {
|
||||
display: inline-block;
|
||||
-webkit-transform: translateZ(40px);
|
||||
-moz-transform: translateZ(40px);
|
||||
-ms-transform: translateZ(40px);
|
||||
-o-transform: translateZ(40px);
|
||||
transform: translateZ(40px);
|
||||
|
||||
-webkit-transition: 0.5s;
|
||||
-moz-transition: 0.5s;
|
||||
-ms-transition: 0.5s;
|
||||
-o-transition: 0.5s;
|
||||
transition: 0.5s;
|
||||
}
|
||||
|
||||
#its-in-3d .have {
|
||||
-webkit-transform: translateZ(-40px);
|
||||
-moz-transform: translateZ(-40px);
|
||||
-ms-transform: translateZ(-40px);
|
||||
-o-transform: translateZ(-40px);
|
||||
transform: translateZ(-40px);
|
||||
}
|
||||
|
||||
#its-in-3d .you {
|
||||
-webkit-transform: translateZ(20px);
|
||||
-moz-transform: translateZ(20px);
|
||||
-ms-transform: translateZ(20px);
|
||||
-o-transform: translateZ(20px);
|
||||
transform: translateZ(20px);
|
||||
}
|
||||
|
||||
#its-in-3d .noticed {
|
||||
-webkit-transform: translateZ(-40px);
|
||||
-moz-transform: translateZ(-40px);
|
||||
-ms-transform: translateZ(-40px);
|
||||
-o-transform: translateZ(-40px);
|
||||
transform: translateZ(-40px);
|
||||
}
|
||||
|
||||
#its-in-3d .its {
|
||||
-webkit-transform: translateZ(60px);
|
||||
-moz-transform: translateZ(60px);
|
||||
-ms-transform: translateZ(60px);
|
||||
-o-transform: translateZ(60px);
|
||||
transform: translateZ(60px);
|
||||
}
|
||||
|
||||
#its-in-3d .in {
|
||||
-webkit-transform: translateZ(-10px);
|
||||
-moz-transform: translateZ(-10px);
|
||||
-ms-transform: translateZ(-10px);
|
||||
-o-transform: translateZ(-10px);
|
||||
transform: translateZ(-10px);
|
||||
}
|
||||
|
||||
#its-in-3d .footnote {
|
||||
font-size: 32px;
|
||||
|
||||
-webkit-transform: translateZ(-10px);
|
||||
-moz-transform: translateZ(-10px);
|
||||
-ms-transform: translateZ(-10px);
|
||||
-o-transform: translateZ(-10px);
|
||||
transform: translateZ(-10px);
|
||||
}
|
||||
|
||||
#its-in-3d.present span,
|
||||
#its-in-3d.present b {
|
||||
-webkit-transform: translateZ(0px);
|
||||
-moz-transform: translateZ(0px);
|
||||
-ms-transform: translateZ(0px);
|
||||
-o-transform: translateZ(0px);
|
||||
transform: translateZ(0px);
|
||||
}
|
||||
|
||||
/*
|
||||
The last step is an overview.
|
||||
There is no content in it, so we make sure it's not visible because we want
|
||||
to be able to click on other steps.
|
||||
|
||||
*/
|
||||
#overview { display: none }
|
||||
|
||||
/*
|
||||
We also make other steps visible and give them a pointer cursor using the
|
||||
`impress-on-` class.
|
||||
*/
|
||||
.impress-on-overview .step {
|
||||
opacity: 1;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/*
|
||||
Now, when we have all the steps styled let's give users a hint how to navigate
|
||||
around the presentation.
|
||||
|
||||
The best way to do this would be to use JavaScript, show a delayed hint for a
|
||||
first time users, then hide it and store a status in cookie or localStorage...
|
||||
|
||||
But I wanted to have some CSS fun and avoid additional scripting...
|
||||
|
||||
Let me explain it first, so maybe the transition magic will be more readable
|
||||
when you read the code.
|
||||
|
||||
First of all I wanted the hint to appear only when user is idle for a while.
|
||||
You can't detect the 'idle' state in CSS, but I delayed a appearing of the
|
||||
hint by 5s using transition-delay.
|
||||
|
||||
You also can't detect in CSS if the user is a first-time visitor, so I had to
|
||||
make an assumption that I'll only show the hint on the first step. And when
|
||||
the step is changed hide the hint, because I can assume that user already
|
||||
knows how to navigate.
|
||||
|
||||
To summarize it - hint is shown when the user is on the first step for longer
|
||||
than 5 seconds.
|
||||
|
||||
The other problem I had was caused by the fact that I wanted the hint to fade
|
||||
in and out. It can be easily achieved by transitioning the opacity property.
|
||||
But that also meant that the hint was always on the screen, even if totally
|
||||
transparent. It covered part of the screen and you couldn't correctly clicked
|
||||
through it.
|
||||
Unfortunately you cannot transition between display `block` and `none` in pure
|
||||
CSS, so I needed a way to not only fade out the hint but also move it out of
|
||||
the screen.
|
||||
|
||||
I solved this problem by positioning the hint below the bottom of the screen
|
||||
with CSS transform and moving it up to show it. But I also didn't want this move
|
||||
to be visible. I wanted the hint only to fade in and out visually, so I delayed
|
||||
the fade in transition, so it starts when the hint is already in its correct
|
||||
position on the screen.
|
||||
|
||||
I know, it sounds complicated ... maybe it would be easier with the code?
|
||||
*/
|
||||
|
||||
.hint {
|
||||
/*
|
||||
We hide the hint until presentation is started and from browsers not supporting
|
||||
impress.js, as they will have a linear scrollable view ...
|
||||
*/
|
||||
display: none;
|
||||
|
||||
/*
|
||||
... and give it some fixed position and nice styles.
|
||||
*/
|
||||
position: fixed;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 200px;
|
||||
|
||||
background: rgba(0,0,0,0.5);
|
||||
color: #EEE;
|
||||
text-align: center;
|
||||
|
||||
font-size: 50px;
|
||||
padding: 20px;
|
||||
|
||||
z-index: 100;
|
||||
|
||||
/*
|
||||
By default we don't want the hint to be visible, so we make it transparent ...
|
||||
*/
|
||||
opacity: 0;
|
||||
|
||||
/*
|
||||
... and position it below the bottom of the screen (relative to it's fixed position)
|
||||
*/
|
||||
-webkit-transform: translateY(400px);
|
||||
-moz-transform: translateY(400px);
|
||||
-ms-transform: translateY(400px);
|
||||
-o-transform: translateY(400px);
|
||||
transform: translateY(400px);
|
||||
|
||||
/*
|
||||
Now let's imagine that the hint is visible and we want to fade it out and move out
|
||||
of the screen.
|
||||
|
||||
So we define the transition on the opacity property with 1s duration and another
|
||||
transition on transform property delayed by 1s so it will happen after the fade out
|
||||
on opacity finished.
|
||||
|
||||
This way user will not see the hint moving down.
|
||||
*/
|
||||
-webkit-transition: opacity 1s, -webkit-transform 0.5s 1s;
|
||||
-moz-transition: opacity 1s, -moz-transform 0.5s 1s;
|
||||
-ms-transition: opacity 1s, -ms-transform 0.5s 1s;
|
||||
-o-transition: opacity 1s, -o-transform 0.5s 1s;
|
||||
transition: opacity 1s, transform 0.5s 1s;
|
||||
}
|
||||
|
||||
/*
|
||||
Now we 'enable' the hint when presentation is initialized ...
|
||||
*/
|
||||
.impress-enabled .hint { display: block }
|
||||
|
||||
/*
|
||||
... and we will show it when the first step (with id 'bored') is active.
|
||||
*/
|
||||
.impress-on-bored .hint {
|
||||
/*
|
||||
We remove the transparency and position the hint in its default fixed
|
||||
position.
|
||||
*/
|
||||
opacity: 1;
|
||||
|
||||
-webkit-transform: translateY(0px);
|
||||
-moz-transform: translateY(0px);
|
||||
-ms-transform: translateY(0px);
|
||||
-o-transform: translateY(0px);
|
||||
transform: translateY(0px);
|
||||
|
||||
/*
|
||||
Now for fade in transition we have the oposite situation from the one
|
||||
above.
|
||||
|
||||
First after 4.5s delay we animate the transform property to move the hint
|
||||
into its correct position and after that we fade it in with opacity
|
||||
transition.
|
||||
*/
|
||||
-webkit-transition: opacity 1s 5s, -webkit-transform 0.5s 4.5s;
|
||||
-moz-transition: opacity 1s 5s, -moz-transform 0.5s 4.5s;
|
||||
-ms-transition: opacity 1s 5s, -ms-transform 0.5s 4.5s;
|
||||
-o-transition: opacity 1s 5s, -o-transform 0.5s 4.5s;
|
||||
transition: opacity 1s 5s, transform 0.5s 4.5s;
|
||||
}
|
||||
|
||||
/*
|
||||
That's all I have for you in this file.
|
||||
Thanks for reading. I hope you enjoyed it at least as much as I enjoyed writing it
|
||||
for you.
|
||||
*/
|
||||
497
website/demo/examples/2D-navigation/css/fonts.css
Normal file
@@ -0,0 +1,497 @@
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
229
website/demo/examples/2D-navigation/css/presentation.css
Normal file
@@ -0,0 +1,229 @@
|
||||
/*
|
||||
A common approach is to use googleapis.com to generate css for the webfonts you want to use.
|
||||
The downside of this approach is that you have to be online. So below I have simply saved
|
||||
the output of the googleapis url into a file. Then you of course also have to make sure
|
||||
the webfonts are locally installed to make offline usage work. For Ubuntu (or Debian) I
|
||||
successfully used the script from here to do that:
|
||||
http://www.webupd8.org/2011/01/automatically-install-all-google-web.html
|
||||
*/
|
||||
|
||||
/* @import url(http://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
|
||||
@import url(fonts.css);
|
||||
|
||||
|
||||
|
||||
/*
|
||||
We display a fallback message for users with browsers that don't support
|
||||
all the features required by it. All of the content will be still fully
|
||||
accessible for them, but some more advanced effects would be missing.
|
||||
When impress.js detects that browser supports all necessary CSS3 features,
|
||||
the fallback-message style is hidden.
|
||||
*/
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
The body background is the bacgkround of "everything". Many
|
||||
impress.js tools call it the "surface". It could also be a
|
||||
picture or pattern, but we leave it as light gray.
|
||||
*/
|
||||
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: #aaccbb;
|
||||
color: #ff4466;
|
||||
}
|
||||
|
||||
/*
|
||||
Now let's style the presentation steps.
|
||||
*/
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
display: block;
|
||||
|
||||
width: 900px;
|
||||
height: 700px;
|
||||
margin: 20px auto;
|
||||
padding: 40px 60px;
|
||||
|
||||
text-shadow: 0 2px 2px rgba(0, 10, 0, .5);
|
||||
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 30px;
|
||||
letter-spacing: -1px;
|
||||
|
||||
}
|
||||
/*
|
||||
Make inactive steps a little bit transparent.
|
||||
*/
|
||||
.impress-enabled .step {
|
||||
margin: 0;
|
||||
opacity: 0.3;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
|
||||
.impress-enabled .step.active { opacity: 1 }
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-bottom: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
p {
|
||||
text-align: center;
|
||||
margin: 0.7em;
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0.2em;
|
||||
}
|
||||
|
||||
/* Highlight.js used for coloring pre > code blocks. */
|
||||
pre > code {
|
||||
font-size: 14px;
|
||||
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* Inline code, no Highlight.js */
|
||||
code {
|
||||
font-family: "Cutive mono","Courier New", monospace;
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
padding: 0 0.1em;
|
||||
background: rgba(200,200,200,0.3);
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
|
||||
border-radius: 0.2em;
|
||||
border-bottom: 1px solid rgba(100,100,100,0.4);
|
||||
border-left: 1px solid rgba(100,100,100,0.4);
|
||||
|
||||
transition: 0.5s;
|
||||
}
|
||||
a:hover,
|
||||
a:focus {
|
||||
background: rgba(200,200,200,1);
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
em {
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strong {
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
q {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 0.4em;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 300px
|
||||
}
|
||||
|
||||
/****************** Background images **********************************************/
|
||||
|
||||
|
||||
img.bg {
|
||||
position: fixed;
|
||||
z-index: -100;
|
||||
opacity: 0;
|
||||
height: 50%;
|
||||
width: auto;
|
||||
transition: opacity 2s;
|
||||
}
|
||||
|
||||
#applepie-image {
|
||||
left: 0px;
|
||||
bottom: 0px;
|
||||
}
|
||||
|
||||
body.impress-on-applepie #applepie-image,
|
||||
body.impress-on-applepie-pro #applepie-image,
|
||||
body.impress-on-applepie-con #applepie-image,
|
||||
body.impress-on-conclusion #applepie-image,
|
||||
body.impress-on-overview #applepie-image {
|
||||
opacity: 0.7;
|
||||
transition: opacity 2s;
|
||||
}
|
||||
|
||||
#icecream-image {
|
||||
right: 0px;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
body.impress-on-icecream #icecream-image,
|
||||
body.impress-on-icecream-pro #icecream-image,
|
||||
body.impress-on-icecream-con #icecream-image,
|
||||
body.impress-on-conclusion #icecream-image,
|
||||
body.impress-on-overview #icecream-image {
|
||||
opacity: 0.7;
|
||||
transition: opacity 2s;
|
||||
}
|
||||
|
||||
#crisps-image {
|
||||
right: 0px;
|
||||
bottom: 0px;
|
||||
}
|
||||
|
||||
body.impress-on-crisps #crisps-image,
|
||||
body.impress-on-crisps-pro #crisps-image,
|
||||
body.impress-on-crisps-con #crisps-image,
|
||||
body.impress-on-conclusion #crisps-image,
|
||||
body.impress-on-overview #crisps-image {
|
||||
opacity: 0.7;
|
||||
transition: opacity 2s;
|
||||
}
|
||||
|
||||
|
||||
/*************** Slide specific things ****************************/
|
||||
|
||||
#image-credits {
|
||||
color: #779988;
|
||||
}
|
||||
|
After Width: | Height: | Size: 1.1 MiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 646 KiB |
204
website/demo/examples/2D-navigation/index.html
Normal file
@@ -0,0 +1,204 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Desserts (2D navigation demo)</title>
|
||||
<meta name="description" content="2D navigation demo" />
|
||||
<meta name="author" content="Henrik Ingo" />
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<link href="css/presentation.css" rel="stylesheet" />
|
||||
</head>
|
||||
<body class="impress-not-supported">
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<!-- Some images that are fixed to background in the css -->
|
||||
<img id="applepie-image" class="bg" src="images/6296334551_b3d5c27823_b.png">
|
||||
<img id="icecream-image" class="bg" src="images/35535918670_f1d12627ff_o.png">
|
||||
<img id="crisps-image" class="bg" src="images/6636957665_5e7c4a79de_o.png">
|
||||
|
||||
|
||||
|
||||
<div id="impress" data-transition-duration="1000">
|
||||
|
||||
<div class="step" data-scale="2" data-x="-500" data-y="-500">
|
||||
<h1>2D navigation</h1>
|
||||
|
||||
<ul>
|
||||
<li>Impress.js allows you to layout your presentation in a 3D space</li>
|
||||
<li>Now <a href="https://github.com/impress/impress.js/tree/master/src/plugins/goto">the
|
||||
goto plugin</a> also allows you to specify
|
||||
non-linear navigation!</li>
|
||||
<li>This demo can be navigated by
|
||||
<ul>
|
||||
<li>continuously pressing Right Arrow</li>
|
||||
<li>continuously pressing Down Arrow</li>
|
||||
<li>(or freely, pressing Up, Down, Right, Left as you choose)</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>It's up to you to decide which is the better structure</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="contents" class="step" data-rel-x="1500" data-rel-y="1500" data-scale="1">
|
||||
<h1>Choosing a treat</h1>
|
||||
|
||||
<ul>
|
||||
<li>You can choose your preferred treat from:
|
||||
<ul>
|
||||
<li>Ice cream</li>
|
||||
<li>Crisps</li>
|
||||
<li>Apple pie</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>We will make a structured pro's & con's analysis to arrive at a conclusion</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<!-- Ice cream slides (3) -->
|
||||
<div id="icecream" class="step" data-x="2000" data-y="2000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="contents icecream-pro contents crisps">
|
||||
<h1>Ice cream</h1>
|
||||
|
||||
<ul>
|
||||
<li>Cold</li>
|
||||
<li>Creamy</li>
|
||||
<li>Vanilla or flavored</li>
|
||||
<li>Caramel sauce, jams & other toppings</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="icecream-pro" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="icecream icecream-con applepie crisps-pro">
|
||||
<h1>Ice cream: Pro's</h1>
|
||||
|
||||
<ul>
|
||||
<li>Great for dessert or snack</li>
|
||||
<li>Great in the Summer</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="icecream-con" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="icecream-pro crisps applepie-pro crisps-con">
|
||||
<h1>Ice cream: Con's</h1>
|
||||
|
||||
<ul>
|
||||
<li>Not so great in the Winter</li>
|
||||
<li>If you're allergic to lactose/milk</li>
|
||||
<li>Diet alternatives are not real ice cream</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Crisps slides (3) -->
|
||||
<div id="crisps" class="step" data-x="3500" data-y="2000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="icecream-con crisps-pro icecream applepie">
|
||||
<h1>Crisps</h1>
|
||||
|
||||
<ul>
|
||||
<li>Potatoes fried in oil and salted</li>
|
||||
<li>Various flavors</li>
|
||||
<li>Dips</li>
|
||||
<li>Can be used as ingredient in subs (Cliff Huxtable style)</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="crisps-pro" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="crisps crisps-con icecream-pro applepie-pro">
|
||||
<h1>Crisps: Pro's</h1>
|
||||
|
||||
<ul>
|
||||
<li>Simple yet tasty concept</li>
|
||||
<li>Great for snack</li>
|
||||
<li>Salty / spicy (not sweet)</li>
|
||||
<li>Finger food</li>
|
||||
<li>Diet alternatives are often ok</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="crisps-con" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="crisps-pro applepie icecream-con applepie-con">
|
||||
<h1>Crisps: Con's</h1>
|
||||
|
||||
<ul>
|
||||
<li>Commonly not used as dessert</li>
|
||||
<li>Not sweet</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apple pie slides (3) -->
|
||||
<div id="applepie" class="step" data-x="5000" data-y="2000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="crisps-con applepie-pro crisps icecream-pro">
|
||||
<h1>Apple pie</h1>
|
||||
|
||||
<ul>
|
||||
<li>Apple's in a pie</li>
|
||||
<li>Many recipes exist. (Grandma's is the best.)</li>
|
||||
<li>Vanilla sauce or cream on top</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="applepie-pro" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="applepie applepie-con crisps-pro icecream-con">
|
||||
<h1>Apple pie: Pro's</h1>
|
||||
|
||||
<ul>
|
||||
<li>Great for dessert</li>
|
||||
<li>Or just with a cup of tea or glass of milk</li>
|
||||
<li>Best when warm</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="applepie-con" class="step" data-rel-x="0" data-rel-y="1000"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
|
||||
data-goto-next-list="applepie-pro conclusion crisps-con conclusion">
|
||||
<h1>Apple pie: Con's</h1>
|
||||
|
||||
<ul>
|
||||
<li>I'm allergic to apple (but a small slice is worth it)</li>
|
||||
<li>Not finger food</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="conclusion" class="step" data-rel-x="1000" data-rel-y="1000">
|
||||
<h1>Conclusion</h1>
|
||||
|
||||
<p>Can I choose all three ;-)</p>
|
||||
|
||||
<p style="font-size: small; position: absolute; bottom: 30px; left: 300px;" id="image-credits"
|
||||
>Image credits: <a href="https://www.flickr.com/photos/reimagingerica/35535918670">reimagingerica@Flickr</a>,
|
||||
<a href="https://www.flickr.com/photos/mixedmolly/6636957665">mixedmolly@Flickr</a>,
|
||||
<a href="https://www.flickr.com/photos/stevepj2009/6296334551">stevepj2009@Flickr</a> </p>
|
||||
</div>
|
||||
|
||||
<div id="overview" class="step" data-x="3000" data-y="2000" data-scale="9" style="pointer-events: none;">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="impress-toolbar"></div>
|
||||
|
||||
<div class="impress-progressbar"><div></div></div>
|
||||
<div class="impress-progress"></div>
|
||||
|
||||
<div id="impress-help"></div>
|
||||
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
169
website/demo/examples/3D-positions/index.html
Normal file
@@ -0,0 +1,169 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>relative rotations</title>
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<style type="text/css" media="screen">
|
||||
#overview {
|
||||
background: none;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
width: 1800px;
|
||||
height: 1300px;
|
||||
}
|
||||
|
||||
#overview div {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 1000px;
|
||||
height: 1000px;
|
||||
padding: 40px 60px;
|
||||
margin: 20px auto;
|
||||
|
||||
box-sizing: border-box;
|
||||
|
||||
line-height: 1.5;
|
||||
|
||||
background-color: yellow;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
|
||||
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
|
||||
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 40pt;
|
||||
letter-spacing: -1px;
|
||||
border: solid 2px red;
|
||||
|
||||
opacity: 40%;
|
||||
}
|
||||
|
||||
.step.active {
|
||||
opacity: 100%;
|
||||
}
|
||||
|
||||
.step.ring2 {
|
||||
background-color: cyan;
|
||||
}
|
||||
|
||||
.step.box {
|
||||
background-color: purple;
|
||||
opacity: 70%;
|
||||
}
|
||||
|
||||
.step.box1 {
|
||||
background-color: lightblue;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body class="impress-not-supported">
|
||||
<div id="impress" data-width="2000" data-height="1500">
|
||||
<div id="overview" class="step overview" data-rel-position="relative" data-x="-1000" data-y="-1500" data-z="100" data-scale="3" data-rotate-x="45" data-rotate-y="10">
|
||||
<div>
|
||||
<h2>Demo of <code>data-rel-position</code></h2>
|
||||
<p>This demo use <code>data-rel-position="relative"</code><br>
|
||||
and <code>data-rel-rotate-x/y/z</code><br>
|
||||
to easy 3D positioning of slides.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="box-front" class="step box" data-x="-3000" data-y="0" data-z="0" data-rotate-x="0" data-rotate-y="0" data-rotate-z="0">Front
|
||||
<p>There's two nested box here.</p>
|
||||
</div>
|
||||
<div id="box-front1" class="step box1" data-rel-reset data-rel-z="-200" data-scale="0.6">Inside Front</div>
|
||||
<div id="box-right1" class="step box1" data-rel-reset data-rel-x="300" data-rel-z="-300" data-rel-rotate-y="90" data-scale="0.6">Inside Right</div>
|
||||
<div id="box-right" class="step box" data-rel-reset data-rel-z="200">Right</div>
|
||||
<div id="box-back" class="step box" data-rel-reset data-rel-x="500" data-rel-z="-500" data-rel-rotate-y="90">Back</div>
|
||||
<div id="box-back1" class="step box1" data-rel-reset data-rel-z="-200" data-scale="0.6">Inside Back</div>
|
||||
<div id="box-top1" class="step box1" data-rel-reset data-rel-y="-300" data-rel-z="-300" data-rel-rotate-x="90" data-scale="0.6">Inside Top</div>
|
||||
<div id="box-top" class="step box" data-rel-reset data-rel-z="200">Top</div>
|
||||
<div id="box-left" class="step box" data-rel-reset data-rel-x="500" data-rel-z="-500" data-rel-rotate-y="90">Left</div>
|
||||
<div id="box-left1" class="step box1" data-rel-reset data-rel-z="-200" data-scale="0.6">Inside Left</div>
|
||||
<div id="box-bottom1" class="step box1" data-rel-reset data-rel-x="300" data-rel-z="-300" data-rel-rotate-y="90" data-scale="0.6">Inside Bottom</div>
|
||||
<div id="box-bottom" class="step box" data-rel-reset data-rel-z="200">Bottom</div>
|
||||
|
||||
<div id="ring1-1" class="step" data-rel-reset="all" data-x="0" data-y="0" data-z="0" data-rotate-y="10">
|
||||
<p>Slide one</p>
|
||||
<p>This is a ring of 8 slides.</p>
|
||||
<p>It's easy constucted with data-rel-position="relative" without calculates the coordinates of all slides.</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-2" class="step" data-rel-rotate-y="45" data-rel-z="-354" data-rel-x="854">
|
||||
<p>Slide two</p>
|
||||
<p>The position of this slide is calculated as relatived position and rotation of the first slide.</p>
|
||||
<p>The following slides don't need to set any position attributes, they are inherit from this slide.</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-3" class="step">
|
||||
<p>Slide three</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-4" class="step">
|
||||
<p>Slide four</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-5" class="step">
|
||||
<p>Slide five</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-6" class="step">
|
||||
<p>Slide six</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-7" class="step">
|
||||
<p>Slide seven</p>
|
||||
</div>
|
||||
|
||||
<div id="ring1-8" class="step">
|
||||
<p>Slide eight</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-1" class="step ring2" data-rel-reset="all" data-x="-500" data-y="0" data-z="-1514" data-rotate-x="90" data-rotate-y="270" data-rotate-z="0">
|
||||
<p>Slide one</p>
|
||||
<p>This is another ring of slides.</p>
|
||||
<p>Except for the this slide, its code is just cloned from the yellow ring.</p>
|
||||
<p>Just change the position of first slide, all the following slides are position relatived to it.</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-2" class="step ring2" data-rel-rotate-y="45" data-rel-z="-354" data-rel-x="854" data-rel-y="0">
|
||||
<p>Slide two</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-3" class="step ring2">
|
||||
<p>Slide three</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-4" class="step ring2">
|
||||
<p>Slide four</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-5" class="step ring2">
|
||||
<p>Slide five</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-6" class="step ring2">
|
||||
<p>Slide six</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-7" class="step ring2">
|
||||
<p>Slide seven</p>
|
||||
</div>
|
||||
|
||||
<div id="ring2-8" class="step ring2">
|
||||
<p>Slide eight</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="impress-toolbar"></div>
|
||||
<div id="impress-help"></div>
|
||||
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
</body>
|
||||
</html>
|
||||
170
website/demo/examples/3D-rotations/css/3D-rotations.css
Normal file
@@ -0,0 +1,170 @@
|
||||
@import url(fonts.css);
|
||||
|
||||
|
||||
|
||||
/* Fallback message */
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/* Body & steps */
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: #00000f;
|
||||
color: rgb(102, 102, 102);
|
||||
}
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 700px;
|
||||
height: 700px;
|
||||
padding: 40px 60px;
|
||||
margin: 20px auto;
|
||||
|
||||
box-sizing: border-box;
|
||||
|
||||
line-height: 1.5;
|
||||
|
||||
background-color: white;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
|
||||
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
|
||||
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 40pt;
|
||||
letter-spacing: -1px;
|
||||
|
||||
}
|
||||
|
||||
/* Overview step has no background or border */
|
||||
|
||||
.overview {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
pointer-events: none;
|
||||
display: none;
|
||||
}
|
||||
.overview.active {
|
||||
display: block;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
/*
|
||||
Make inactive steps a little bit transparent.
|
||||
*/
|
||||
.impress-enabled .step {
|
||||
margin: 0;
|
||||
opacity: 0.1;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
|
||||
.impress-enabled .step.active { opacity: 1 }
|
||||
|
||||
|
||||
/* Content */
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-bottom: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0.7em;
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0.2em;
|
||||
}
|
||||
|
||||
/* Highlight.js used for coloring pre > code blocks. */
|
||||
pre > code {
|
||||
font-size: 14px;
|
||||
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* Inline code, no Highlight.js */
|
||||
code {
|
||||
font-family: "Cutive mono","Courier New", monospace;
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
padding: 0 0.1em;
|
||||
background: rgba(200,200,200,0.2);
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
|
||||
border-radius: 0.2em;
|
||||
border-bottom: 1px solid rgba(100,100,100,0.2);
|
||||
border-left: 1px solid rgba(100,100,100,0.2);
|
||||
|
||||
transition: 0.5s;
|
||||
}
|
||||
a:hover,
|
||||
a:focus {
|
||||
background: rgba(200,200,200,1);
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
em {
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strong {
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
q {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 0.4em;
|
||||
}
|
||||
|
||||
/* Styles specific to each step */
|
||||
|
||||
#overview2 {
|
||||
font-size: 20pt;
|
||||
padding-left: 200px;
|
||||
text-align: right;
|
||||
}
|
||||
497
website/demo/examples/3D-rotations/css/fonts.css
Normal file
@@ -0,0 +1,497 @@
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
90
website/demo/examples/3D-rotations/index.html
Normal file
@@ -0,0 +1,90 @@
|
||||
<!doctype html>
|
||||
|
||||
<!--
|
||||
This is a simple example / template impress.js slide show. The goal is to be
|
||||
easier to read for a first timer than the official and very feature rich
|
||||
demo by bartaz (http://bartaz.github.io/impress.js/). It's also a very
|
||||
traditional presentation that looks like slides (square screens with bullet
|
||||
points...), again to make a first timer feel more at home. From this simple
|
||||
presentation you can then go on to more powerful impress.js presentations!
|
||||
|
||||
This example is hopefully helpful for people that want to create both
|
||||
simple and (eventually) awesome presentations in impress.js and comfortable
|
||||
doing that directly in HTML.
|
||||
|
||||
By: @henrikingo (Still based on the HTML from bartaz' demo.)
|
||||
|
||||
-->
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>A Study in 3D Rotations| by Henrik Ingo @henrikingo</title>
|
||||
<meta name="description" content="Explore impress.js in 3D" />
|
||||
<meta name="author" content="Henrik Ingo" />
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<link href="css/3D-rotations.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="impress-not-supported">
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<div id="impress" data-transition-duration="2000">
|
||||
|
||||
|
||||
<div id="overview" class="step overview" data-x="1350" data-y="100" data-z="100" data-scale="3" data-rotate-y="90">
|
||||
<h1>A Study in 3D Rotations</h1>
|
||||
</div>
|
||||
<div id="overview2" class="step overview" data-x="2018" data-y="106" data-z="3018" data-scale="2">
|
||||
<p>Unlike the <code>x/y/z</code> coordinates (aka translations), the <code>rotate-x/y/z</code> rotations are applied in a
|
||||
specific order, and order matters. This demo presentation exhibits the use of the new <code>data-rotate- order</code> attribute.
|
||||
Instead of the default "xyz" order, the steps use the reversed <em>"zyx"</em> order in applying rotations around each axis.
|
||||
Some of the steps (<a href="#step-3">3</a> & <a href="#step-7">7</a>), are in positions that are not possible with the default "xyz" order.</p>
|
||||
</div>
|
||||
|
||||
<div id="step-1" class="step" data-x="0" data-y="0" data-z="0"
|
||||
data-goto-prev="step-8">
|
||||
<p>Slide one</p>
|
||||
</div>
|
||||
|
||||
<div id="step-2" class="step" data-x="420" data-y="-70" data-z="-250" data-rotate-z="45" data-rotate-y="-45" data-rotate-order="zyx">
|
||||
<p>Slide two</p>
|
||||
</div>
|
||||
|
||||
<div id="step-3" class="step" data-x="700" data-y="350" data-z="-350" data-rotate-z="90" data-rotate-y="-90" data-rotate-order="zyx">
|
||||
<p>Slide three</p>
|
||||
</div>
|
||||
|
||||
<div id="step-4" class="step" data-x="422" data-y="780" data-z="-250" data-rotate-z="135" data-rotate-y="-135" data-rotate-order="zyx">
|
||||
<p>Slide four</p>
|
||||
</div>
|
||||
|
||||
<div id="step-5" class="step" data-x="0" data-y="702" data-z="0" data-rotate-z="180" data-rotate-y="-180" data-rotate-order="zyx">
|
||||
<p>Slide five</p>
|
||||
</div>
|
||||
|
||||
<div id="step-6" class="step" data-x="379" data-y="780" data-z="270" data-rotate-z="135" data-rotate-y="-225" data-rotate-order="zyx">
|
||||
<p>Slide six</p>
|
||||
</div>
|
||||
|
||||
<div id="step-7" class="step" data-x="700" data-y="350" data-z="350" data-rotate-z="90" data-rotate-y="-270" data-rotate-order="zyx">
|
||||
<p>Slide seven</p>
|
||||
</div>
|
||||
|
||||
<div id="step-8" class="step" data-x="379" data-y="-70" data-z="270" data-rotate-z="45" data-rotate-y="-315" data-rotate-order="zyx"
|
||||
data-goto-next="step-1">
|
||||
<p>Slide eight</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="impress-toolbar"></div>
|
||||
<div id="impress-help"></div>
|
||||
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
379
website/demo/examples/classic-slides/css/classic-slides.css
Normal file
@@ -0,0 +1,379 @@
|
||||
/*
|
||||
A common approach is to use googleapis.com to generate css for the webfonts you want to use.
|
||||
The downside of this approach is that you have to be online. So below I have simply saved
|
||||
the output of the googleapis url into a file. Then you of course also have to make sure
|
||||
the webfonts are locally installed to make offline usage work. For Ubuntu (or Debian) I
|
||||
successfully used the script from here to do that:
|
||||
http://www.webupd8.org/2011/01/automatically-install-all-google-web.html
|
||||
*/
|
||||
|
||||
/* @import url(https://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
|
||||
@import url(fonts.css);
|
||||
|
||||
|
||||
|
||||
/*
|
||||
We display a fallback message for users with browsers that don't support
|
||||
all the features required by it. All of the content will be still fully
|
||||
accessible for them, but some more advanced effects would be missing.
|
||||
When impress.js detects that browser supports all necessary CSS3 features,
|
||||
the fallback-message style is hidden.
|
||||
*/
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
The body background is the bacgkround of "everything". Many
|
||||
impress.js tools call it the "surface". It could also be a
|
||||
picture or pattern, but we leave it as light gray.
|
||||
*/
|
||||
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: rgb(215, 215, 215);
|
||||
color: rgb(70, 70, 70);
|
||||
}
|
||||
|
||||
/*
|
||||
Now let's style the presentation steps.
|
||||
*/
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 1800px;
|
||||
padding: 60px;
|
||||
margin: 60px auto;
|
||||
|
||||
box-sizing: border-box;
|
||||
|
||||
font-family: 'PT Serif', georgia, serif;
|
||||
font-size: 60px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
/*
|
||||
Make inactive steps a little bit transparent.
|
||||
*/
|
||||
.impress-enabled .step {
|
||||
margin: 0;
|
||||
opacity: 0.3;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
|
||||
.impress-enabled .step.active { opacity: 1 }
|
||||
|
||||
/*
|
||||
These 'slide' step styles were heavily inspired by HTML5 Slides:
|
||||
http://html5slides.googlecode.com/svn/trunk/styles.css
|
||||
|
||||
Note that we also use a background image, again just to facilitate a common
|
||||
feature from PowerPoint and LibreOffice worlds. In this case the background
|
||||
image is just the impress.js favicon - as if it were a company logo or something.
|
||||
|
||||
*/
|
||||
.slide {
|
||||
display: block;
|
||||
|
||||
width: 1850px;
|
||||
height: 1000px;
|
||||
padding: 40px 60px;
|
||||
|
||||
background-image: url(../images/background.png);
|
||||
background-color: white;
|
||||
border: 2px solid rgba(0, 0, 0, .3);
|
||||
border-radius: 30px;
|
||||
box-shadow: 0 4px 8px rgba(0, 0, 0, .1);
|
||||
|
||||
text-shadow: 0 3px 3px rgba(0, 0, 0, .2);
|
||||
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 45px;
|
||||
letter-spacing: -2px;
|
||||
}
|
||||
|
||||
|
||||
.slide h1,
|
||||
.slide h2,
|
||||
.slide h3 {
|
||||
margin-bottom: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.slide p {
|
||||
text-align: center;
|
||||
margin: 0.7em;
|
||||
}
|
||||
|
||||
.slide li {
|
||||
margin-top: 0.2em;
|
||||
margin-bottom: 0.2em;
|
||||
margin-left: 3em;
|
||||
margin-right: 3em;
|
||||
}
|
||||
|
||||
/* Highlight.js used for coloring pre > code blocks. */
|
||||
.slide pre > code {
|
||||
font-size: 30px;
|
||||
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
.slide input {
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
/* Inline code, no Highlight.js */
|
||||
code {
|
||||
font-family: "Cutive mono","Courier New", monospace;
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
padding: 0 0.1em;
|
||||
background: rgba(200,200,200,0.2);
|
||||
text-shadow: -2px 2px 4px rgba(100,100,100,0.9);
|
||||
border-radius: 0.2em;
|
||||
border-bottom: 3px solid rgba(100,100,100,0.2);
|
||||
border-left: 3px solid rgba(100,100,100,0.2);
|
||||
|
||||
transition: 0.5s;
|
||||
}
|
||||
a:hover,
|
||||
a:focus {
|
||||
background: rgba(200,200,200,1);
|
||||
text-shadow: -2px 2px 3px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
em {
|
||||
text-shadow: 0 6px 6px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strong {
|
||||
text-shadow: -3px 3px 6px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
q {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
text-shadow: 0 6px 6px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 0.4em;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 600px
|
||||
}
|
||||
|
||||
td {
|
||||
padding: 0.2em;
|
||||
}
|
||||
|
||||
.slide .right {
|
||||
float: right;
|
||||
margin-left: 60px;
|
||||
margin-right: 0px;
|
||||
margin-top: 40px;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
.slide .left {
|
||||
float: left;
|
||||
margin-right: 60px;
|
||||
margin-left: 0px;
|
||||
margin-top: 40px;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
.slide .top {
|
||||
position: absolute;
|
||||
top: 40px;
|
||||
margin-bottom: 40px;
|
||||
margin-top: 0px;
|
||||
}
|
||||
.slide .bottom {
|
||||
position: absolute;
|
||||
bottom: 40px;
|
||||
margin-bottom: 0px;
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
/*
|
||||
Specific styles for: .title slides
|
||||
*/
|
||||
|
||||
.title {
|
||||
background-image: url(../images/background-title.png);
|
||||
}
|
||||
|
||||
.title h1,
|
||||
.title h2,
|
||||
.title h3 {
|
||||
position: absolute;
|
||||
left: 90px; /* slide width is 1800px, so this is like a 5% margin on both sides */
|
||||
width: 90%;
|
||||
text-align: center;
|
||||
}
|
||||
.title h1 { top: 50px; }
|
||||
.title h2 { top: 600px; }
|
||||
.title h3 { top: 800px; }
|
||||
|
||||
|
||||
|
||||
/* Styles for animating the contents of a slide, such as a img, p, li or span element. ********/
|
||||
|
||||
/*
|
||||
fly-in class starts from a position outside the slide, then flies into it's correct position.
|
||||
*/
|
||||
.future .fly-in {
|
||||
transform: translateY(-2100px);
|
||||
opacity: 0.0; /* Make it invisible, just so it doesn't clutter some other slide that might be in the position where we moved it */
|
||||
}
|
||||
.present .fly-in {
|
||||
transform: translateY(0px);
|
||||
opacity: 1.0;
|
||||
transition: 2s;
|
||||
}
|
||||
.past .fly-out {
|
||||
transform: translateY(2100px);
|
||||
opacity: 0.0;
|
||||
transition: 2s;
|
||||
}
|
||||
|
||||
/*
|
||||
Fade-in/out is a straightforward fade. Give it enough seconds that all browsers render it clearly.
|
||||
*/
|
||||
.future .fade-in {
|
||||
opacity: 0.0;
|
||||
}
|
||||
.present .fade-in {
|
||||
opacity: 1.0;
|
||||
transition: 3s;
|
||||
}
|
||||
.past .fade-out {
|
||||
opacity: 0.0;
|
||||
transition: 3s;
|
||||
}
|
||||
/*
|
||||
Zoom-in.
|
||||
*/
|
||||
.future .zoom-in {
|
||||
transform: scale(10);
|
||||
opacity: 0.0;
|
||||
}
|
||||
.present .zoom-in {
|
||||
transform: scale(1);
|
||||
opacity: 1.0;
|
||||
transition: 3s;
|
||||
}
|
||||
.past .zoom-out {
|
||||
transform: scale(10);
|
||||
opacity: 0.0;
|
||||
}
|
||||
|
||||
/*
|
||||
Styles for specific slides.
|
||||
*/
|
||||
|
||||
/* The bar graph for Acme Inc profits */
|
||||
|
||||
#acme-graph-bottom {
|
||||
position: absolute;
|
||||
bottom: 100px;
|
||||
right: 200px;
|
||||
background-color: black;
|
||||
width: 900px;
|
||||
height: 3px;
|
||||
}
|
||||
|
||||
/* height: is set from javascript */
|
||||
#acme-graph-q1,
|
||||
#acme-graph-q2,
|
||||
#acme-graph-q3,
|
||||
#acme-graph-q4 {
|
||||
border: solid 1px black;
|
||||
width: 140px;
|
||||
margin-left: 30px;
|
||||
position: absolute;
|
||||
bottom: 100px;
|
||||
}
|
||||
|
||||
#acme-graph-q1 {
|
||||
background-color: red;
|
||||
right: 900px;
|
||||
}
|
||||
|
||||
#acme-graph-q2 {
|
||||
background-color: blue;
|
||||
right: 700px;
|
||||
}
|
||||
|
||||
#acme-graph-q3 {
|
||||
background-color: green;
|
||||
right: 500px;
|
||||
}
|
||||
|
||||
#acme-graph-q4 {
|
||||
background-color: purple;
|
||||
left: 750px;
|
||||
right: 300px;
|
||||
}
|
||||
|
||||
/*
|
||||
And as the last thing there is a workaround for quite strange bug.
|
||||
It happens a lot in Chrome. I don't remember if I've seen it in Firefox.
|
||||
|
||||
Sometimes the element positioned in 3D (especially when it's moved back
|
||||
along Z axis) is not clickable, because it falls 'behind' the <body>
|
||||
element.
|
||||
|
||||
To prevent this, I decided to make <body> non clickable by setting
|
||||
pointer-events property to `none` value.
|
||||
Value if this property is inherited, so to make everything else clickable
|
||||
I bring it back on the #impress element.
|
||||
|
||||
If you want to know more about `pointer-events` here are some docs:
|
||||
https://developer.mozilla.org/en/CSS/pointer-events
|
||||
|
||||
There is one very important thing to notice about this workaround - it makes
|
||||
everything 'unclickable' except what's in #impress element.
|
||||
|
||||
So use it wisely ... or don't use at all.
|
||||
*/
|
||||
.impress-enabled { pointer-events: none }
|
||||
.impress-enabled #impress { pointer-events: auto }
|
||||
.impress-enabled #impress-toolbar { pointer-events: auto }
|
||||
.impress-enabled #impress-console-button { pointer-events: auto }
|
||||
497
website/demo/examples/classic-slides/css/fonts.css
Normal file
@@ -0,0 +1,497 @@
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
|
After Width: | Height: | Size: 73 KiB |
BIN
website/demo/examples/classic-slides/images/background-title.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
337
website/demo/examples/classic-slides/images/background-title.svg
Normal file
@@ -0,0 +1,337 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="900"
|
||||
height="700"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.4 r9939"
|
||||
sodipodi:docname="background-title.svg"
|
||||
inkscape:export-filename="/home/hingo/hacking/impress.js/examples/classic-slides/images/background-title.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
id="linearGradient3972">
|
||||
<stop
|
||||
style="stop-color:#d7d7d7;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3974" />
|
||||
<stop
|
||||
id="stop4001"
|
||||
offset="0.5"
|
||||
style="stop-color:#e4e4eb;stop-opacity:0.49803922;" />
|
||||
<stop
|
||||
style="stop-color:#f2f2ff;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3976" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7"
|
||||
inkscape:cx="442.96588"
|
||||
inkscape:cy="486.34297"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1600"
|
||||
inkscape:window-height="845"
|
||||
inkscape:window-x="-2"
|
||||
inkscape:window-y="-3"
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-352.36218)">
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1175.0086,227.72198)"
|
||||
inkscape:transform-center-x="-1.50147"
|
||||
inkscape:transform-center-y="-0.2514516" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1183.5508,278.97519)"
|
||||
inkscape:transform-center-x="1.6045478"
|
||||
inkscape:transform-center-y="-0.68274238" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1144.399,329.51655)"
|
||||
inkscape:transform-center-x="-1.409826"
|
||||
inkscape:transform-center-y="-0.48807819" />
|
||||
<image
|
||||
y="-881.14282"
|
||||
x="775.50507"
|
||||
id="image4083"
|
||||
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAABP9JREFU
|
||||
WIWdl11oW2UYx3/P+WiSpknHsi2MNgtkGNbVVryoisJkA+sYjG3MG2GwQdEhuxB2M4ThBGGCjLFR
|
||||
pkPZhYIwNrCom+iK9GJ4sVIdumnRdh/CbEu1o7ZZ6UdyHi+aU9+cnqyNLzyQc973/b//5/98vDmi
|
||||
qqx2qCqWZaGq7N69e6/neU/atj0bi8X6Ll269EOxWMRxHFpaWhgcHFw9aC0WiUQARkVEAQW0/Pua
|
||||
quJ53qod+l8EgJTjOCX/cN8cx5lQ1c2e59VEwqqNLiQSiQlV/Sf4Pp1OzwCzIoKIsOrQ1qqAqhKP
|
||||
x/8koABwwVyzWhWqKvA4D4rFYp/5LCKsWbPmNxGpeGdiGCEklUqFEzh69Cgi8oWIvCsilEqlUAJz
|
||||
c3PXzGfbtnEc57sw0g8fPkRVEZF3RKT3wIEDTExMVHq6sLBAX18fwK+AWpalwMcDAwMUi8VlIdiw
|
||||
YcOzdXV1pvyFsFBNTU35x5wrYypw58yZM5UEyszPlhd4BvC327Zts4PAzc3NOI4z5a9zXfePMAJN
|
||||
TU0AXxl4PvZrS2qpKsePH2+JRCLBpPLt1qZNm5pDyvGOv6axsfH74HwymQQYCMMUkZnW1tb/CADP
|
||||
mI0laNFodNp13af97FZVMpnMTcOj0+ac67o5y7LCKkX9EO/YsSNvEsgkk0kFljUYXzrbtueBTj8n
|
||||
gBOA2ratwKuGMu22bc8FQmnK70WjUW1ra0sD4HkepVKJ8fHxLNABfJpIJLzAJt+KwBuFQgFgSyKR
|
||||
+An4JplMxsuH7wXmw5yor69X4GsR2X7jxo2mU6dOVSah2UDi8TjATuBqeWOw77eqKvfv32d0dNT3
|
||||
/PmAgl557Y8i0gUwNDSEqnLs2DGWRlj2+rFUVbq6utqBN23b/jkajarrugth+4Cs4zh+jP+uq6vr
|
||||
FpG2mzdvpsNwXdetTiDM+vv7AdqAtjDC5aa1B9i5f//+FfF6enpYu3ZtbXfB+vXrN7a2ttZVm+/s
|
||||
7MQ8fHJysirW0l2xUggOHz6cAV4RkSupVEoty7rT1dW1bM+uXbsQkdvAiOu6Z4GO3t7eZf3DtHv3
|
||||
7oUTKI+XgE+CSVi2fMie9mDJWZY1ISIngC3VnDXjB/Ac8Hk0Gg3WrlmGRxYWFshms3XASeA00FTu
|
||||
bB9Wq/90Ol0E3gNyg4ODstRPyuw7yguDmysakYhsNzx+3Zg/qao8evQI4MgKWCWgcPDgwbSqLl3H
|
||||
cUDKFjbGI5HIU57n9fkhyuVye/zJVCr1AkB9fT2qeg542SAQHJbruvGRkZEGYDEE3d3d7SIyV4Vx
|
||||
/9atW5fFrqGh4bbvaSwWG1JV20zgWCz2BDBRBfOvJSUNSd83Yuaz/+z69esb5+fnwxL1gQE4GZZg
|
||||
uVyuCbgVzAfgxQoCpVKJu3fvbgR+Nxa/rbr4ZyUInM1mc47jLPV827a9TCazrOSKxSJjY2MAVw3c
|
||||
Hv/MCgVUlfPnzwN8CRwK9gOzR6xbt26nKalt25pOpw+FqTA7O4uqxoGPgAsA09PTVCiwUjMKkf+t
|
||||
YFwbGho+qLa+XHK28XtlAo+zfD7/gOVldkVVN6+0FyrPdKqUXehQXfw2dBevMrNktbGxsQNorAUP
|
||||
QIzWu6qRSCSYmZmZ8jwvUQEkMuV5Xs0Eav40KxQKeJ43FnyvqoOXL1+uFa42BVQV/+tn3759LcPD
|
||||
w3nXdcnn879cvHhx2PM8LKs2n/4Ful6n5lJtlzQAAAAASUVORK5CYII=
|
||||
"
|
||||
height="50.57143"
|
||||
width="50.57143"
|
||||
transform="matrix(0,1,-1,0,0,0)" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197-6"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(0.44159933,0.23084195,-0.23084195,0.44159933,89.555741,918.94346)"
|
||||
inkscape:transform-center-x="-1.8892484"
|
||||
inkscape:transform-center-y="-0.39033876" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-8"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,38.474821,733.37841)"
|
||||
inkscape:transform-center-x="-1.50147"
|
||||
inkscape:transform-center-y="-0.2514516" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-9"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,30.121671,876.6823)"
|
||||
inkscape:transform-center-x="-1.409826"
|
||||
inkscape:transform-center-y="-0.48807819" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-3"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.34408672,0,0,0.34408672,-3.3081587,917.1069)"
|
||||
inkscape:transform-center-x="-0.97352805"
|
||||
inkscape:transform-center-y="-0.33703252" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-3-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.34408672,0,0,0.34408672,29.548981,922.96025)"
|
||||
inkscape:transform-center-x="-0.97352805"
|
||||
inkscape:transform-center-y="-0.33703252" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-8-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.3204918,0,0,0.3204918,79.533061,832.48569)"
|
||||
inkscape:transform-center-x="-0.96571172"
|
||||
inkscape:transform-center-y="-0.16173851" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-279.52146,234.09512)"
|
||||
inkscape:transform-center-x="1.5309823"
|
||||
inkscape:transform-center-y="-0.25143993" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197-4"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-288.23156,285.34529)"
|
||||
inkscape:transform-center-x="-1.6360872"
|
||||
inkscape:transform-center-y="-0.68270036" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-90"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-248.3102,335.88365)"
|
||||
inkscape:transform-center-x="1.437537"
|
||||
inkscape:transform-center-y="-0.48804535" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="829.30469"
|
||||
y="-856.37756"
|
||||
id="text4226"
|
||||
sodipodi:linespacing="125%"
|
||||
transform="matrix(0,1,-1,0,0,0)"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4228"
|
||||
x="829.30469"
|
||||
y="-856.37756"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:PT Serif;-inkscape-font-specification:PT Serif">impress.js</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
BIN
website/demo/examples/classic-slides/images/background.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
323
website/demo/examples/classic-slides/images/background.svg
Normal file
@@ -0,0 +1,323 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="900"
|
||||
height="700"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.4 r9939"
|
||||
sodipodi:docname="background.svg"
|
||||
inkscape:export-filename="/home/hingo/hacking/impress.js/examples/classic-slides/images/background-title.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
id="linearGradient3972">
|
||||
<stop
|
||||
style="stop-color:#d7d7d7;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3974" />
|
||||
<stop
|
||||
id="stop4001"
|
||||
offset="0.5"
|
||||
style="stop-color:#e4e4eb;stop-opacity:0.49803922;" />
|
||||
<stop
|
||||
style="stop-color:#f2f2ff;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3976" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7"
|
||||
inkscape:cx="442.96588"
|
||||
inkscape:cy="486.34297"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1600"
|
||||
inkscape:window-height="845"
|
||||
inkscape:window-x="-2"
|
||||
inkscape:window-y="-3"
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-352.36218)">
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1080.7229,232.00769)"
|
||||
inkscape:transform-center-x="-1.50147"
|
||||
inkscape:transform-center-y="-0.2514516" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1089.2651,283.2609)"
|
||||
inkscape:transform-center-x="1.6045478"
|
||||
inkscape:transform-center-y="-0.68274238" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,1050.1133,333.80226)"
|
||||
inkscape:transform-center-x="-1.409826"
|
||||
inkscape:transform-center-y="-0.48807819" />
|
||||
<image
|
||||
y="999.21936"
|
||||
x="852.57141"
|
||||
id="image4083"
|
||||
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAABP9JREFU
|
||||
WIWdl11oW2UYx3/P+WiSpknHsi2MNgtkGNbVVryoisJkA+sYjG3MG2GwQdEhuxB2M4ThBGGCjLFR
|
||||
pkPZhYIwNrCom+iK9GJ4sVIdumnRdh/CbEu1o7ZZ6UdyHi+aU9+cnqyNLzyQc973/b//5/98vDmi
|
||||
qqx2qCqWZaGq7N69e6/neU/atj0bi8X6Ll269EOxWMRxHFpaWhgcHFw9aC0WiUQARkVEAQW0/Pua
|
||||
quJ53qod+l8EgJTjOCX/cN8cx5lQ1c2e59VEwqqNLiQSiQlV/Sf4Pp1OzwCzIoKIsOrQ1qqAqhKP
|
||||
x/8koABwwVyzWhWqKvA4D4rFYp/5LCKsWbPmNxGpeGdiGCEklUqFEzh69Cgi8oWIvCsilEqlUAJz
|
||||
c3PXzGfbtnEc57sw0g8fPkRVEZF3RKT3wIEDTExMVHq6sLBAX18fwK+AWpalwMcDAwMUi8VlIdiw
|
||||
YcOzdXV1pvyFsFBNTU35x5wrYypw58yZM5UEyszPlhd4BvC327Zts4PAzc3NOI4z5a9zXfePMAJN
|
||||
TU0AXxl4PvZrS2qpKsePH2+JRCLBpPLt1qZNm5pDyvGOv6axsfH74HwymQQYCMMUkZnW1tb/CADP
|
||||
mI0laNFodNp13af97FZVMpnMTcOj0+ac67o5y7LCKkX9EO/YsSNvEsgkk0kFljUYXzrbtueBTj8n
|
||||
gBOA2ratwKuGMu22bc8FQmnK70WjUW1ra0sD4HkepVKJ8fHxLNABfJpIJLzAJt+KwBuFQgFgSyKR
|
||||
+An4JplMxsuH7wXmw5yor69X4GsR2X7jxo2mU6dOVSah2UDi8TjATuBqeWOw77eqKvfv32d0dNT3
|
||||
/PmAgl557Y8i0gUwNDSEqnLs2DGWRlj2+rFUVbq6utqBN23b/jkajarrugth+4Cs4zh+jP+uq6vr
|
||||
FpG2mzdvpsNwXdetTiDM+vv7AdqAtjDC5aa1B9i5f//+FfF6enpYu3ZtbXfB+vXrN7a2ttZVm+/s
|
||||
7MQ8fHJysirW0l2xUggOHz6cAV4RkSupVEoty7rT1dW1bM+uXbsQkdvAiOu6Z4GO3t7eZf3DtHv3
|
||||
7oUTKI+XgE+CSVi2fMie9mDJWZY1ISIngC3VnDXjB/Ac8Hk0Gg3WrlmGRxYWFshms3XASeA00FTu
|
||||
bB9Wq/90Ol0E3gNyg4ODstRPyuw7yguDmysakYhsNzx+3Zg/qao8evQI4MgKWCWgcPDgwbSqLl3H
|
||||
cUDKFjbGI5HIU57n9fkhyuVye/zJVCr1AkB9fT2qeg542SAQHJbruvGRkZEGYDEE3d3d7SIyV4Vx
|
||||
/9atW5fFrqGh4bbvaSwWG1JV20zgWCz2BDBRBfOvJSUNSd83Yuaz/+z69esb5+fnwxL1gQE4GZZg
|
||||
uVyuCbgVzAfgxQoCpVKJu3fvbgR+Nxa/rbr4ZyUInM1mc47jLPV827a9TCazrOSKxSJjY2MAVw3c
|
||||
Hv/MCgVUlfPnzwN8CRwK9gOzR6xbt26nKalt25pOpw+FqTA7O4uqxoGPgAsA09PTVCiwUjMKkf+t
|
||||
YFwbGho+qLa+XHK28XtlAo+zfD7/gOVldkVVN6+0FyrPdKqUXehQXfw2dBevMrNktbGxsQNorAUP
|
||||
QIzWu6qRSCSYmZmZ8jwvUQEkMuV5Xs0Eav40KxQKeJ43FnyvqoOXL1+uFa42BVQV/+tn3759LcPD
|
||||
w3nXdcnn879cvHhx2PM8LKs2n/4Ful6n5lJtlzQAAAAASUVORK5CYII=
|
||||
"
|
||||
height="32"
|
||||
width="32" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197-6"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(0.44159933,0.23084195,-0.23084195,0.44159933,328.12717,970.37203)"
|
||||
inkscape:transform-center-x="-1.8892484"
|
||||
inkscape:transform-center-y="-0.39033876" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-8"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,277.04625,784.80698)"
|
||||
inkscape:transform-center-x="-1.50147"
|
||||
inkscape:transform-center-y="-0.2514516" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-9"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.49829507,0,0,0.49829507,268.6931,928.11087)"
|
||||
inkscape:transform-center-x="-1.409826"
|
||||
inkscape:transform-center-y="-0.48807819" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-3"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.34408672,0,0,0.34408672,235.26327,968.53547)"
|
||||
inkscape:transform-center-x="-0.97352805"
|
||||
inkscape:transform-center-y="-0.33703252" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-3-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(0.34408672,0,0,0.34408672,268.12041,974.38882)"
|
||||
inkscape:transform-center-x="-0.97352805"
|
||||
inkscape:transform-center-y="-0.33703252" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-8-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(0.3204918,0,0,0.3204918,318.10449,883.91426)"
|
||||
inkscape:transform-center-x="-0.96571172"
|
||||
inkscape:transform-center-y="-0.16173851" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
|
||||
id="path3195-0"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-432.85715"
|
||||
sodipodi:cy="448.57144"
|
||||
sodipodi:r1="36.617161"
|
||||
sodipodi:r2="29.623903"
|
||||
sodipodi:arg1="1.2120257"
|
||||
sodipodi:arg2="1.8403442"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-180.95003,232.66655)"
|
||||
inkscape:transform-center-x="1.5309823"
|
||||
inkscape:transform-center-y="-0.25143993" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3197-4"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-478.57144"
|
||||
sodipodi:cy="288.57144"
|
||||
sodipodi:r1="47.573788"
|
||||
sodipodi:r2="38.488003"
|
||||
sodipodi:arg1="0.72165485"
|
||||
sodipodi:arg2="1.3499734"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-189.66013,283.91672)"
|
||||
inkscape:transform-center-x="-1.6360872"
|
||||
inkscape:transform-center-y="-0.68270036" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
|
||||
id="path3199-90"
|
||||
sodipodi:sides="5"
|
||||
sodipodi:cx="-358.57144"
|
||||
sodipodi:cy="152.85715"
|
||||
sodipodi:r1="39.512333"
|
||||
sodipodi:r2="31.966148"
|
||||
sodipodi:arg1="2.4329664"
|
||||
sodipodi:arg2="3.0612849"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
|
||||
transform="matrix(-0.50808944,0,0,0.49826547,-149.73877,334.45508)"
|
||||
inkscape:transform-center-x="1.437537"
|
||||
inkscape:transform-center-y="-0.48804535" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 12 KiB |
491
website/demo/examples/classic-slides/index.html
Normal file
@@ -0,0 +1,491 @@
|
||||
<!doctype html>
|
||||
|
||||
<!--
|
||||
This is a simple example / template impress.js slide show. The goal is to be
|
||||
easier to read for a first timer than the official and very feature rich
|
||||
demo by bartaz (http://bartaz.github.io/impress.js/). It's also a very
|
||||
traditional presentation that looks like slides (square screens with bullet
|
||||
points...), again to make a first timer feel more at home. From this simple
|
||||
presentation you can then go on to more powerful impress.js presentations!
|
||||
|
||||
This example is hopefully helpful for people that want to create both
|
||||
simple and (eventually) awesome presentations in impress.js and comfortable
|
||||
doing that directly in HTML.
|
||||
|
||||
By: @henrikingo (Still based on the HTML from bartaz' demo.)
|
||||
|
||||
-->
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Classic Slides with impress.js | Simple example impress.js slide show | by Henrik Ingo @henrikingo</title>
|
||||
|
||||
<meta name="description" content="Simple example impress.js slide show" />
|
||||
<meta name="author" content="Henrik Ingo" />
|
||||
<!--
|
||||
Impress.js doesn't depend on any external stylesheets. It adds all of the styles it needs for the
|
||||
presentation to work.
|
||||
|
||||
However, some of the `extras/` modules do come with their own CSS, and we load
|
||||
them here. You can read about each extras module separately in their directory.
|
||||
-->
|
||||
<link rel="stylesheet" href="../../extras/highlight/styles/github.css">
|
||||
<link rel="stylesheet" href="../../extras/mermaid/mermaid.forest.css">
|
||||
|
||||
<!-- This file contains common styles for example presentations. -->
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<!--
|
||||
This file contains styles specific for this example presentation.
|
||||
-->
|
||||
<link href="css/classic-slides.css" rel="stylesheet" />
|
||||
|
||||
</head>
|
||||
|
||||
<!--
|
||||
|
||||
Body element is used by impress.js to set some useful class names, that will allow you to detect
|
||||
the support and state of the presentation in CSS or other scripts.
|
||||
|
||||
First very useful class name is `impress-not-supported`. This class means, that browser doesn't
|
||||
support features required by impress.js, so you should apply some fallback styles in your CSS.
|
||||
It's not necessary to add it manually on this element. If the script detects that browser is not
|
||||
good enough it will add this class, but keeping it in HTML means that users without JavaScript
|
||||
will also get fallback styles.
|
||||
|
||||
When impress.js script detects that browser supports all required features, this class name will
|
||||
be removed.
|
||||
|
||||
Another class name on body element also depends on currently active presentation step.
|
||||
-->
|
||||
<body class="impress-not-supported">
|
||||
<!--
|
||||
This fallback message is only visible when there is `impress-not-supported` class on body.
|
||||
-->
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
This is the core element used by impress.js: the wrapper for your presentation steps.
|
||||
In this element all the impress.js magic happens.
|
||||
|
||||
data-transition-duration sets the time in microseconds that is used for the
|
||||
animation when transtitioning between slides.
|
||||
|
||||
The width, height, scale and perspective options define a target screen size that you should
|
||||
design your CSS against. impress.js will automatically scale all content to different screen
|
||||
sizes. See DOCUMENTATION.md for details. Below, I have targeted full HD screen resolution.
|
||||
|
||||
data-autoplay can be used to set the time in seconds, after which presentation
|
||||
automatically moves to next slide. It can also be set individually for each
|
||||
slide, but here we just set a common duration for all slides.
|
||||
-->
|
||||
<div id="impress"
|
||||
data-transition-duration="1000"
|
||||
|
||||
data-width="1920"
|
||||
data-height="1080"
|
||||
data-max-scale="3"
|
||||
data-min-scale="0"
|
||||
data-perspective="1000"
|
||||
|
||||
data-autoplay="10">
|
||||
|
||||
<!--
|
||||
Each step of the presentation should be an element inside the `#impress` with a class name
|
||||
of `step`. These step elements are positioned, rotated and scaled by impress.js, and
|
||||
the 'camera' shows them on each step of the presentation.
|
||||
|
||||
The `id` attribute of the step element is used to identify it in the URL, but it's optional.
|
||||
If it is not defined, it will get a default value of `step-N` where N is a number of slide.
|
||||
This step is auto-assigned the id "step-1". You can also use `#step-1` in a link, to
|
||||
point directly to this particular step.
|
||||
|
||||
Positioning information is passed through data-* attributes.
|
||||
|
||||
In the example below we only specify x and y position of the step element with `data-x="-1000"`
|
||||
and `data-y="-1500"` attributes. This means that **the center** of the element (yes, the center)
|
||||
will be positioned in point x = -1000px and y = -1500px of the presentation 'canvas'. It will not
|
||||
be rotated or scaled.
|
||||
|
||||
The "step" class is what *must* be used for every "slide". In this example we also use the "slide"
|
||||
class, which adds a rectangle with some background and makes this presentation look like a traditional
|
||||
powerpoint slide show. The "slide" class is entirely optional and indeed you wouldn't use it for
|
||||
your cooler impress.js presentations.
|
||||
-->
|
||||
<div class="step slide title" data-x="-2200" data-y="-3000">
|
||||
<h1>Example Presentation: <br />
|
||||
Classic Slides</h1>
|
||||
<h2>Henrik Ingo</h2>
|
||||
<h3>2015</h3>
|
||||
|
||||
<div class="notes">
|
||||
Any element with the class="notes" will not be displayed. This can
|
||||
be used for speaker notes. In fact, the impressConsole plugin will
|
||||
show it in the speaker console!
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="toc" class="step slide" data-rel-x="2200" data-rel-y="0">
|
||||
<h1>Table of Contents</h1>
|
||||
<ul>
|
||||
<li><a href="#step-1">A title slide</a></li>
|
||||
<li><a href="#step-2">Table of Contents</a></li>
|
||||
<li><a href="#step-3">Text slide</a></li>
|
||||
<li><a href="#step-4">Bullet points</a></li>
|
||||
<li><a href="#step-5">Blockquote & image</a></li>
|
||||
<li><a href="#step-6">More basic text styles</a></li>
|
||||
<li><a href="#step-7">Motion effects 101</a></li>
|
||||
<li><a href="#addons">Add-ons</a></li>
|
||||
<li><a href="#moreinfo">More info</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="notes">
|
||||
<p>Table of Contents, with links to other slides of this same presentation.</p>
|
||||
|
||||
<p>Note that instead of absolute positioning we use relative positioning,
|
||||
with the data-rel-x and data-rel-y attributes. This means the step is
|
||||
positioned relative to the foregoing step. In other words, this is
|
||||
equivalent to data-x="0" data-y="-3000".</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide">
|
||||
<h1>A slide with text</h1>
|
||||
<p>This slide has a few paragraphs <br />(p element) of normal text.</p>
|
||||
<p>Personally I like centered or even justified text, as it looks less boring. This can of course be set in <a href="css/classic-slides.css">the css file</a>.</p>
|
||||
<p>I really like the style on links in these presentations. I modified the border to be beveled, but it's mostly from <a href="http://impress.github.io/impress.js/">@bartaz' original demo</a>. <a href="https://twitter.com/bartaz">@bartaz</a> is the creator of impress.js.</p>
|
||||
|
||||
<div class="notes">
|
||||
In this slide, we don't even specify the relative position, rather
|
||||
that too is inherited. So this slide will again be 1000px to the
|
||||
right of the previous one.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide">
|
||||
<h1>Bullet points</h1>
|
||||
<ul>
|
||||
<li>A slide with bullet points. This is the first point.</li>
|
||||
<li>Second point</li>
|
||||
<li>Third point. Under this point we also have some sub-bullets:
|
||||
<ul>
|
||||
<li>Sub-bullet 1</li>
|
||||
<li>Sub-bullet 2</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<div class="notes">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
This element introduces rotation.
|
||||
|
||||
Notation shouldn't be a surprise. We use `data-rotate="30"` attribute, meaning that this
|
||||
element should be rotated by 30 degrees clockwise.
|
||||
-->
|
||||
<div class="step slide" data-rel-position="relative" data-rel-x="2200" data-rel-y="600" data-rel-rotate-z="30">
|
||||
<h1>A blockquote & image</h1>
|
||||
<img src="images/3476636111_c551295ca4_b.jpg"
|
||||
alt="Mother Teresa holding a newborn baby"
|
||||
class="right"/>
|
||||
<blockquote>
|
||||
Spread love everywhere you go. <br />Let no one ever come to you without leaving happier.
|
||||
<p style="text-align: right">Mother Teresa</p>
|
||||
<p class="left bottom"><small>Image credit: <a href="https://www.flickr.com/photos/peta-de-aztlan/3476636111/">Peta_de_Aztlan</a>@Flickr. CC-BY 2.0</small></p>
|
||||
</blockquote>
|
||||
|
||||
<div class="notes">
|
||||
We use <code>data-rel-position="relative"</code> to make <code>data-rel-rotate-*</code> work,
|
||||
and make <code>data-rel-x/data-rel-y/data-rel-y</code> be calculated at the coordination related to previous slide.
|
||||
The relative position and rotation will be inherited by following slides,
|
||||
so it's not necessary to repeat it again and again.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide">
|
||||
<h1>More text styles</h1>
|
||||
<p>As usual, use <em>em</em> to emphasize, <br />
|
||||
<strong>strong</strong> for strong, <u>u</u> for underline,<br />
|
||||
<strike>strike</strike> for strikethrough and <q>q for inline quotations</q>.</p>
|
||||
|
||||
<p>If you're a software engineer like me, you will often use the
|
||||
<code><code></code> tag for monospaced inline text.</p>
|
||||
|
||||
<div class="notes">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="motions" class="step slide">
|
||||
<h1>Motion effects 101</h1>
|
||||
<p>Items on the slide can</p>
|
||||
<p class="fly-in fly-out">Fly in</p>
|
||||
<p class="fade-in fade-out" style="transition-delay: 2s">Fade in</p>
|
||||
<p class="zoom-in zoom-out" style="transition-delay: 4s">And zoom in</p>
|
||||
|
||||
<p class="left bottom"><small>...just like in PowerPoint. Yeah, I know I'm being lame, but it was fun to learn to do this in CSS3.</small></p>
|
||||
|
||||
<div class="notes">
|
||||
<p>This step here doesn't introduce anything new when it comes to data attributes, but you
|
||||
should notice in the demo that some words of this text are being animated.
|
||||
It's a very basic CSS transition that is applied to the elements when this step element is
|
||||
reached.
|
||||
</p><p>
|
||||
At the very beginning of the presentation all step elements are given the class of `future`.
|
||||
It means that they haven't been visited yet.
|
||||
</p><p>
|
||||
When the presentation moves to given step `future` is changed to `present` class name.
|
||||
That's how animation on this step works - text moves when the step has `present` class.
|
||||
</p><p>
|
||||
Finally when the step is left the `present` class is removed from the element and `past`
|
||||
class is added.
|
||||
</p><p>
|
||||
So basically every step element has one of three classes: `future`, `present` and `past`.
|
||||
Only one current step has the `present` class.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="zoom" class="step" data-rel-reset data-rel-x="-0.25w" data-rel-y="0.5h" data-scale="0.5">
|
||||
<div class="notes">
|
||||
<p>This step zoom in to left bottom of previous slide to see to small text.</p>
|
||||
<p>It's a empty and transparent.</p>
|
||||
<p><code>data-rel-reset</code> is used to prevent this step from inheriting the relative positioning from previous slide.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="addons" class="step slide title" data-rel-to="motions">
|
||||
<h2>Add-ons</h2>
|
||||
<div class="notes">
|
||||
<p>This version of impress.js includes several add-ons, striving to make this a
|
||||
full featured presentation app.</p>
|
||||
<p>The previous step breaks the slide flow, changes the relative position and rotation.</p>
|
||||
<p>This slide use <code>data-rel-to</code> to inherit relative position and rotation from the slide before previous slide.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide" data-autoplay="3">
|
||||
<h1>Impress.js plugins</h1>
|
||||
<ul>
|
||||
<li>A new <a href="https://github.com/impress/impress.js/blob/master/src/plugins/README.md">plugin framework</a> allows for rich extensibility,
|
||||
without bloating the core rendering library.
|
||||
<ul>
|
||||
<li class="substep">Press 'P' to open a presenter console.</li>
|
||||
<li class="substep">When you move the mouse, navigation controls are visible on your bottom right</li>
|
||||
<li class="substep">Autoplay makes the slides advance after a timeout</li>
|
||||
<li class="substep">Relative positioning plugin is often a more convenient way to position your slides when editing. (<a href="https://github.com/impress/impress.js/blob/master/examples/classic-slides/index.html">See html for this presentation.</a>)</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="notes">
|
||||
<p>This presentation also uses speaker notes. They are not visible in the presentation, but shown in the impress console.</p>
|
||||
|
||||
<p>If you pressed P only now, this is the first time you see these notes. In fact, there has been notes on preceding slides as well.
|
||||
You can use the navigation controls at the bottom of the impress console to browse back to them.</p>
|
||||
|
||||
<p>And did you notice how those bullet points appear one by one as you press space/arrow? That's another plugin, called substeps.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide">
|
||||
<h1>Highlight.js</h1>
|
||||
<pre><code>
|
||||
// `init` API function that initializes (and runs) the presentation.
|
||||
var init = function () {
|
||||
if (initialized) { return; }
|
||||
execPreInitPlugins();
|
||||
|
||||
// First we set up the viewport for mobile devices.
|
||||
// For some reason iPad goes nuts when it is not done properly.
|
||||
var meta = $("meta[name='viewport']") || document.createElement("meta");
|
||||
meta.content = "width=device-width, minimum-scale=1, maximum-scale=1, user-scalable=no";
|
||||
if (meta.parentNode !== document.head) {
|
||||
meta.name = 'viewport';
|
||||
document.head.appendChild(meta);
|
||||
}
|
||||
</code></pre>
|
||||
<div class="notes">
|
||||
<p>The Highlight.js library provides really nice color coding of source code.
|
||||
It automatically applies to any code inside a <pre><code> element.</p>
|
||||
<p>Highlight.js is found under the <a href="https://github.com/impress/impress.js/tree/master/extras">extras/</a>
|
||||
directory, since it is an independent third party plugin, not really an impress.js plugin. You have
|
||||
to include it via it's own <link> and <script> tags.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="step slide">
|
||||
<h1>Mermaid.js</h1>
|
||||
<div class="mermaid">
|
||||
%% This is a comment in mermaid markup
|
||||
graph LR
|
||||
A(Support for<br />diagrams)
|
||||
B[Provided by<br />mermaid.js]
|
||||
C{Already<br />know<br />mermaid?}
|
||||
D(<a href="http://knsv.github.io/mermaid/index.html#usage">Tutorial</a>)
|
||||
E(Great, hope you enjoy!)
|
||||
A-->B
|
||||
B-->C
|
||||
C--No-->D
|
||||
C--Yes-->E
|
||||
classDef startEnd fill:#fcc,stroke:#353,stroke-width:2px;
|
||||
class A,D,E startEnd;
|
||||
</div>
|
||||
|
||||
<h1><a href="http://docs.mathjax.org/en/latest/start.html">MathJax.js</a></h1>
|
||||
<p>Use \(\LaTeX\), MathML or AsciiMath to properly show mathematical formula.</p>
|
||||
<div class="notes">
|
||||
Mermaid.js, likewise in a href="https://github.com/impress/impress.js/tree/master/extras">extras/</a>
|
||||
directory, draws SVG diagrams from a MarkDown-like syntax. To learn
|
||||
more about it <a href="http://knsv.github.io/mermaid/index.html#usage">read the fine manual</a>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="markdown" class="step slide markdown">
|
||||
# Markdown.js
|
||||
|
||||
* [Markdown.js](https://github.com/evilstreak/markdown-js) integration: for authors in a hurry!
|
||||
* ...or lazy ;-)
|
||||
* Jot down bullet points in *Markdown*
|
||||
* ...have it automatically converted to HTML
|
||||
* Markdown is converted into a presentation client side, in the browser. This is unlike
|
||||
existing tools like [Hovercraft](https://github.com/regebro/hovercraft) and
|
||||
markdown-impress where you generate a new
|
||||
html file on the command line.
|
||||
* [A more advanced Markdown presentation is here.](../markdown/)
|
||||
</div>
|
||||
|
||||
<div id="acme" class="step slide">
|
||||
<ul>
|
||||
<li>Remember, in <em>impress.js</em> the full power of HTML5, CSS3 & JavaScript is always at your fingertips!</li>
|
||||
<li>For example, you can use tables, forms, or dynamic charts as you would on any web page:</li>
|
||||
</ul>
|
||||
<h2>Acme Inc Quarterly Profits</h2>
|
||||
|
||||
<!-- Improvised bar graph of divs, to avoid copying something like NVD3 into the repo. -->
|
||||
<div id="acme-graph">
|
||||
<div id="acme-graph-bars">
|
||||
<div id="acme-graph-q1"></div>
|
||||
<div id="acme-graph-q2"></div>
|
||||
<div id="acme-graph-q3"></div>
|
||||
<div id="acme-graph-q4"></div>
|
||||
</div>
|
||||
<div id="acme-graph-bottom"></div>
|
||||
</div>
|
||||
|
||||
<table border="1">
|
||||
<tr><td>Q1</td><td id="acme-q1">234€</td></tr>
|
||||
<tr><td>Q2</td><td id="acme-q2">255€</td></tr>
|
||||
<tr><td>Q3</td><td><input id="acme-q3" size="5" oninput="acmeDrawGraph();" />€ <small>(insert here)</small></td></tr>
|
||||
<tr><td>Q4</td><td><input id="acme-q4" size="5" oninput="acmeDrawGraph();" />€</td></tr>
|
||||
</table>
|
||||
<div class="notes">
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
var acmeDrawGraph = function() {
|
||||
var profits = {};
|
||||
|
||||
// Q1-Q2: get innerHTML, remove €
|
||||
var value = document.getElementById('acme-q1').innerHTML;
|
||||
if( value[value.length-1] == "€" ) value = value.substring(0, value.length-1);
|
||||
profits['q1'] = value;
|
||||
var value = document.getElementById('acme-q2').innerHTML;
|
||||
if( value[value.length-1] == "€" ) value = value.substring(0, value.length-1);
|
||||
profits['q2'] = value;
|
||||
|
||||
// Q3-Q4: get input.value
|
||||
profits['q3'] = document.getElementById('acme-q3').value;
|
||||
profits['q4'] = document.getElementById('acme-q4').value;
|
||||
|
||||
// Convert all to numeric value, and remember max value for scaling purposes.
|
||||
var max = profits['q1'];
|
||||
for ( var q in profits ) {
|
||||
profits[q] = isNaN(profits[q]) ? 0 : Number(profits[q]);
|
||||
if( profits[q] > max ) {
|
||||
max = profits[q];
|
||||
}
|
||||
}
|
||||
|
||||
// Draw the bar graph
|
||||
for ( var q in profits ) {
|
||||
var h = 300 * profits[q] / max;
|
||||
var div = document.getElementById('acme-graph-'+q);
|
||||
div.style = 'height: ' + h + 'px';
|
||||
}
|
||||
};
|
||||
// This draws the first 2 bars during page load
|
||||
acmeDrawGraph();
|
||||
</script>
|
||||
|
||||
<!--
|
||||
This step also sets a custom data-transition-duration. All of the above steps used the value set
|
||||
in the root div#impress element, but it is also allowed to set it for each step. Since transitioning
|
||||
to this step will rotate twice around it's axis, we give the transition a bit more time here.
|
||||
-->
|
||||
<div id="moreinfo" class="step slide" data-x="4400" data-y="1200" data-rotate="720" data-transition-duration="2000">
|
||||
<h1>More info</h1>
|
||||
<ul>
|
||||
<li><a href="https://github.com/impress/impress.js/blob/master/DOCUMENTATION.md">DOCUMENTATION.md</a> is the API reference.
|
||||
</li>
|
||||
<li><a href="https://github.com/impress/impress.js/blob/master/examples/classic-slides/index.html">Source of this presentation itself</a> is commented</li>
|
||||
<li><a href="http://impress.github.io/impress.js/">Advanced Impress.js demo</a> by <a href="http://twitter.com/bartaz">@bartaz</a>
|
||||
<ul>
|
||||
<li>Again, the <a href="http://github.com/impress/impress.js/blob/master/index.html">html</a>
|
||||
and <a href="https://github.com/impress/impress.js/blob/master/css/impress-demo.css">css</a> source is well commented.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>More examples and demos:
|
||||
<ul>
|
||||
<li><a href="https://github.com/impress/impress.js/tree/master/examples">examples/</a> in this repository</li>
|
||||
<li><a href="https://github.com/impress/impress.js/wiki/Examples-and-demos">on the impress.js wiki</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Check out <a href="https://github.com/impress/impressionist">Impressionist</a>: a 3D GUI to create impress.js presentations</li>
|
||||
</ul>
|
||||
|
||||
<div class="notes">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- This last, empty "slide" is set to be very large using the data-scale attribute,
|
||||
so that it covers all the other slides you just saw.
|
||||
It's a common way of zooming out at the end, to show the whole presentation.
|
||||
In CSS, we set pointer-events:none to make this slide non-clickable.
|
||||
It makes a difference at least for SVG content, such as the mermaid diagram. -->
|
||||
<div id="overview" class="step" data-x="4500" data-y="1500" data-scale="10" style="pointer-events: none;">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
Add navigation-ui controls: back, forward and a select list.
|
||||
Add a progress indicator bar (current step / all steps)
|
||||
Add the help popup plugin
|
||||
-->
|
||||
<div id="impress-toolbar"></div>
|
||||
|
||||
<div class="impress-progressbar"><div></div></div>
|
||||
<div class="impress-progress"></div>
|
||||
|
||||
<div id="impress-help"></div>
|
||||
|
||||
<!-- Extra modules
|
||||
Load highlight.js, mermaid.js, markdown.js and MathJax.js from extras.
|
||||
If you're curious about details, these are initialized in src/plugins/extras/extras.js -->
|
||||
<script type="text/javascript" src="../../extras/highlight/highlight.pack.js"></script>
|
||||
<script type="text/javascript" src="../../extras/mermaid/mermaid.min.js"></script>
|
||||
<script type="text/javascript" src="../../extras/markdown/markdown.js"></script>
|
||||
<script type="text/javascript" src="../../extras/mathjax/MathJax.js?config=TeX-AMS_CHTML"></script>
|
||||
<!--
|
||||
To make all described above really work, you need to include impress.js in the page.
|
||||
You also need to call a `impress().init()` function to initialize impress.js presentation.
|
||||
And you should do it in the end of your document.
|
||||
-->
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
160
website/demo/examples/cube/css/cube.css
Normal file
@@ -0,0 +1,160 @@
|
||||
@import url(fonts.css);
|
||||
|
||||
/* Specific to this presentation */
|
||||
|
||||
div.step p {
|
||||
border: solid 2px black;
|
||||
border-radius: 120px;
|
||||
width: 170px;
|
||||
height: 110px;
|
||||
text-align: center;
|
||||
padding-top: 65px;
|
||||
background-color: black;
|
||||
color: white;
|
||||
}
|
||||
|
||||
div.step img {
|
||||
border: solid 2px black;
|
||||
border-radius: 120px;
|
||||
width: 170px;
|
||||
height: 170px;
|
||||
text-align: center;
|
||||
background-color: black;
|
||||
color: white;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/* Fallback message */
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/* Body & steps */
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: #00000f;
|
||||
color: rgb(102, 102, 102);
|
||||
}
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 700px;
|
||||
height: 700px;
|
||||
padding: 40px 60px;
|
||||
margin: 20px auto;
|
||||
|
||||
box-sizing: border-box;
|
||||
|
||||
line-height: 1.5;
|
||||
|
||||
background-color: white;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
|
||||
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 30px;
|
||||
letter-spacing: -1px;
|
||||
|
||||
}
|
||||
|
||||
#overview {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-bottom: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0.7em;
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0.2em;
|
||||
}
|
||||
|
||||
/* Highlight.js used for coloring pre > code blocks. */
|
||||
pre > code {
|
||||
font-size: 14px;
|
||||
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* Inline code, no Highlight.js */
|
||||
code {
|
||||
font-family: "Cutive mono","Courier New", monospace;
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
color: #ddd;
|
||||
text-decoration: underline;
|
||||
}
|
||||
a:hover,
|
||||
a:focus {
|
||||
background: rgba(200,200,200,1);
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
padding: 0 0.1em;
|
||||
background: rgba(200,200,200,0.2);
|
||||
border-radius: 0.2em;
|
||||
border-bottom: 1px solid rgba(100,100,100,0.2);
|
||||
border-left: 1px solid rgba(100,100,100,0.2);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
em {
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strong {
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
q {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 0.4em;
|
||||
}
|
||||
497
website/demo/examples/cube/css/fonts.css
Normal file
@@ -0,0 +1,497 @@
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
BIN
website/demo/examples/cube/img/Henrik_mustache.jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
76
website/demo/examples/cube/index.html
Normal file
@@ -0,0 +1,76 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Cube | Explore impress.js in 3D | by Henrik Ingo @henrikingo</title>
|
||||
<meta name="description" content="Explore impress.js in 3D" />
|
||||
<meta name="author" content="Henrik Ingo" />
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<link href="css/cube.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="impress-not-supported">
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<div id="impress" data-transition-duration="2000">
|
||||
|
||||
<div class="step" data-x="0" data-y="0" data-z="350"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-4 step-3 step-2 step-5 overview">
|
||||
<p style="position: absolute; top: 240px; left: 240px;">Slides</p>
|
||||
</div>
|
||||
|
||||
<div class="step" data-x="350" data-y="0" data-z="0" data-rotate-y="90"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-4 step-3 step-6 step-1 overview">
|
||||
<p style="position: absolute; top: 50px; left: 50px;">In</p>
|
||||
<p style="position: absolute; bottom: 50px; right: 50px;">3D</p>
|
||||
</div>
|
||||
|
||||
<div class="step" data-x="0" data-y="350" data-z="0" data-rotate-x="-90" data-rotate-z="90"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-2 step-5 step-6 step-1 overview">
|
||||
<p style="position: absolute; top: 50px; left: 50px;">Check</p>
|
||||
<p style="position: absolute; top: 240px; left: 240px;"><a href="https://impress.js.org">impress.js</a></p>
|
||||
<p style="position: absolute; bottom: 50px; right: 50px;">out</p>
|
||||
</div>
|
||||
|
||||
<div class="step" data-x="0" data-y="-350" data-z="0" data-rotate-x="90" data-rotate-z="-90"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-5 step-2 step-6 step-1 overview">
|
||||
<p style="position: absolute; top: 50px; left: 50px;">CSS</p>
|
||||
<p style="position: absolute; top: 50px; right: 50px;">Positioning</p>
|
||||
<p style="position: absolute; bottom: 50px; left: 50px;">is</p>
|
||||
<p style="position: absolute; bottom: 50px; right: 50px;">amazing</p>
|
||||
</div>
|
||||
|
||||
<div class="step" data-x="-350" data-y="0" data-z="0" data-rotate-y="-90" data-rotate-z="-180"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-3 step-4 step-6 step-1 overview">
|
||||
<p style="position: absolute; top: 50px; left: 50px;">By</p>
|
||||
<p style="position: absolute; top: 50px; right: 50px;">hingo</p>
|
||||
<img src="img/Henrik_mustache.jpg" alt="Henrik Ingo portrait, with mustache" style="position: absolute; top: 275px; left: 275px;">
|
||||
<p style="position: absolute; bottom: 50px; left: 50px;">bartaz</p>
|
||||
<p style="position: absolute; bottom: 50px; right: 50px; padding-top: 30px; height: 140px;"><a href="https://github.com/impress/impress.js/graphs/contributors">+70 contributors</a></p>
|
||||
</div>
|
||||
|
||||
<div class="step" data-x="0" data-y="0" data-z="-350" data-rotate-y="-180" data-rotate-z="-180"
|
||||
data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-3 step-4 step-2 step-5 overview">
|
||||
<p style="position: absolute; top: 50px; left: 50px;">Open</p>
|
||||
<p style="position: absolute; top: 50px; right: 50px;">Source</p>
|
||||
<p style="position: absolute; top: 240px; left: 50px;">&</p>
|
||||
<p style="position: absolute; top: 240px; right: 50px;">HTML</p>
|
||||
<p style="position: absolute; bottom: 50px; left: 50px;">CSS</p>
|
||||
<p style="position: absolute; bottom: 50px; right: 50px;">JavaScript</p>
|
||||
</div>
|
||||
|
||||
<div id="overview" class="step" data-x="700" data-y="-100" data-z="1000" data-scale="1" style="pointer-events: none;">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="impress-toolbar"></div>
|
||||
<div id="impress-help"></div>
|
||||
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
website/demo/examples/index.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Example presentations</title>
|
||||
</head>
|
||||
<body><h1>Example presentations</h1>
|
||||
<ul><br />
|
||||
<li><a href="2D-navigation/">2D-navigation</a></li>
|
||||
<li><a href="3D-positions/">3D-positions</a></li>
|
||||
<li><a href="3D-rotations/">3D-rotations</a></li>
|
||||
<li><a href="classic-slides/">classic-slides</a></li>
|
||||
<li><a href="cube/">cube</a></li>
|
||||
<li><a href="markdown/">markdown</a></li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
47
website/demo/examples/markdown/css/devopsy.css
Normal file
@@ -0,0 +1,47 @@
|
||||
/***** Menu where this style is selected *****/
|
||||
.devopsy .css-menu-devopsy {
|
||||
border: solid 1px #aaaaaa;
|
||||
}
|
||||
|
||||
|
||||
/***** Presentation *****/
|
||||
|
||||
body.devopsy {
|
||||
background: #000;
|
||||
}
|
||||
|
||||
.devopsy .step {
|
||||
color: #ffff00;
|
||||
}
|
||||
|
||||
/***** Styles *****/
|
||||
.devopsy h1,
|
||||
.devopsy h2,
|
||||
.devopsy h3 {
|
||||
color: #ff6600;
|
||||
}
|
||||
|
||||
.devopsy a {
|
||||
color: #00ffff;
|
||||
}
|
||||
|
||||
.devopsy blockquote {
|
||||
text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
|
||||
}
|
||||
|
||||
.devopsy em {
|
||||
text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
|
||||
}
|
||||
|
||||
.devopsy strong {
|
||||
text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
|
||||
}
|
||||
|
||||
.devopsy q {
|
||||
text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
|
||||
}
|
||||
|
||||
.devopsy strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
41
website/demo/examples/markdown/css/effects.css
Normal file
@@ -0,0 +1,41 @@
|
||||
/***** Menu where this style is selected *****/
|
||||
.effects .css-menu-effects {
|
||||
border: solid 1px #aaaaaa;
|
||||
}
|
||||
|
||||
/***** Presentation *****/
|
||||
|
||||
body.effects {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: #dde5dd;
|
||||
}
|
||||
|
||||
.effects .step {
|
||||
}
|
||||
|
||||
|
||||
/* Color effect. */
|
||||
.effects .past > *,
|
||||
.effects .future > * {
|
||||
color: inherit;
|
||||
transition: 3s;
|
||||
}
|
||||
.effects .present > * {
|
||||
color: rgb(200, 102, 102);
|
||||
transition: 3s;
|
||||
}
|
||||
|
||||
/* Fly right */
|
||||
|
||||
.effects .past h1,
|
||||
.effects .future h1 {
|
||||
transform: scale(3);
|
||||
transition: 1s;
|
||||
}
|
||||
.effects .present h1 {
|
||||
transform: scale(1);
|
||||
transition: 1s;
|
||||
}
|
||||
|
||||
497
website/demo/examples/markdown/css/fonts.css
Normal file
@@ -0,0 +1,497 @@
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Cutive Mono';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* greek-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
|
||||
unicode-range: U+1F00-1FFF;
|
||||
}
|
||||
/* greek */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
|
||||
unicode-range: U+0370-03FF;
|
||||
}
|
||||
/* vietnamese */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
|
||||
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
/* cyrillic-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||
}
|
||||
/* cyrillic */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
|
||||
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||
}
|
||||
/* latin-ext */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
|
||||
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||
}
|
||||
/* latin */
|
||||
@font-face {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||
}
|
||||
|
||||
182
website/demo/examples/markdown/css/markdown-slides.css
Normal file
@@ -0,0 +1,182 @@
|
||||
/***** Fonts *****/
|
||||
|
||||
/* @import url(http://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
|
||||
@import url(fonts.css);
|
||||
|
||||
|
||||
/***** Fallback message *****/
|
||||
|
||||
.fallback-message {
|
||||
font-family: sans-serif;
|
||||
line-height: 1.3;
|
||||
|
||||
width: 780px;
|
||||
padding: 10px 10px 0;
|
||||
margin: 20px auto;
|
||||
|
||||
border: 1px solid #E4C652;
|
||||
border-radius: 10px;
|
||||
background: #EEDC94;
|
||||
}
|
||||
|
||||
.fallback-message p {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.impress-supported .fallback-message {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/***** Per slide hacks *****/
|
||||
|
||||
div#step-4 > p:last-child {
|
||||
margin-top: 150px;
|
||||
font-size: 0.5em;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
div#tilted-slide {
|
||||
text-shadow: 20px 20px 10px rgba(0, 0, 0, .4);
|
||||
}
|
||||
div#tilted-slide h1 {
|
||||
margin-top: 200px;
|
||||
}
|
||||
|
||||
/***** Menu where this style is selected *****/
|
||||
.css-menu-bw {
|
||||
border: solid 1px rgb(102, 102, 102);
|
||||
}
|
||||
|
||||
.effects .css-menu-bw,
|
||||
.devopsy .css-menu-bw {
|
||||
border: none;
|
||||
}
|
||||
|
||||
/***** Presentation *****/
|
||||
|
||||
body {
|
||||
font-family: 'PT Sans', sans-serif;
|
||||
min-height: 740px;
|
||||
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.step {
|
||||
position: relative;
|
||||
width: 900px;
|
||||
height: 700px;
|
||||
padding: 40px 60px;
|
||||
margin: 20px auto;
|
||||
|
||||
box-sizing: border-box;
|
||||
|
||||
color: rgb(102, 102, 102);
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
|
||||
font-family: 'Open Sans', Arial, sans-serif;
|
||||
font-size: 30px;
|
||||
letter-spacing: -1px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
/*
|
||||
Make inactive steps a little bit transparent.
|
||||
*/
|
||||
.impress-enabled .step {
|
||||
margin: 0;
|
||||
opacity: 0.3;
|
||||
transition: opacity 1s;
|
||||
}
|
||||
.impress-enabled .step.active { opacity: 1 }
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-bottom: 0.5em;
|
||||
margin-top: 0.5em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0.7em;
|
||||
}
|
||||
|
||||
li {
|
||||
margin: 0.2em;
|
||||
}
|
||||
|
||||
/* Highlight.js used for coloring pre > code blocks. */
|
||||
pre > code {
|
||||
font-size: 14px;
|
||||
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
/* Inline code, no Highlight.js */
|
||||
code {
|
||||
font-family: "Cutive mono","Courier New", monospace;
|
||||
}
|
||||
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
padding: 0 0.1em;
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
|
||||
border-radius: 0.2em;
|
||||
|
||||
transition: 0.5s;
|
||||
}
|
||||
a:hover,
|
||||
a:focus {
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
em {
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strong {
|
||||
text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
|
||||
}
|
||||
|
||||
q {
|
||||
font-family: 'PT Serif';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
|
||||
}
|
||||
|
||||
strike {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 300px;
|
||||
float: right;
|
||||
margin-left: 40px;
|
||||
margin-right: 0px;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Specific styles for: .title steps
|
||||
*/
|
||||
|
||||
.title h1,
|
||||
.title h2,
|
||||
.title h3 {
|
||||
position: absolute;
|
||||
left: 45px; /* slide width is 900px, so this is like a 5% margin on both sides */
|
||||
width: 90%;
|
||||
text-align: center;
|
||||
}
|
||||
.title h1 { top: 50px; }
|
||||
.title h2 { top: 400px; }
|
||||
.title h3 { top: 500px; }
|
||||
|
After Width: | Height: | Size: 73 KiB |
195
website/demo/examples/markdown/index.html
Normal file
@@ -0,0 +1,195 @@
|
||||
<!doctype html>
|
||||
|
||||
<!--
|
||||
A presentation done entirely in Markdown, as found in extras/markdown/.
|
||||
|
||||
By: @henrikingo
|
||||
-->
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Markdown in impress.js | by Henrik Ingo @henrikingo</title>
|
||||
|
||||
<meta name="description" content="Authoring impress.js presentations in Markdown" />
|
||||
<meta name="author" content="Henrik Ingo" />
|
||||
<link rel="stylesheet" href="../../extras/highlight/styles/github.css">
|
||||
|
||||
<!-- Common styles for example presentations -->
|
||||
<link href="../../css/impress-common.css" rel="stylesheet" />
|
||||
<!--
|
||||
Styles specific for this example presentation.
|
||||
-->
|
||||
<link href="css/markdown-slides.css" rel="stylesheet" />
|
||||
<link href="css/devopsy.css" rel="stylesheet" />
|
||||
<link href="css/effects.css" rel="stylesheet" />
|
||||
|
||||
</head>
|
||||
|
||||
<body class="impress-not-supported">
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<div id="impress" data-transition-duration="1000">
|
||||
|
||||
<div id="markdown" class="step slide markdown" data-rel-x="0" data-rel-y="900">
|
||||
# Markdown
|
||||
## to author Impress.js presentations
|
||||
|
||||
* This presentation was written entirely in Markdown
|
||||
* Added by popular request
|
||||
* Easy way to make quick, simple yet aesthetic, presentations
|
||||
* Authoring without all the clutter of HTML
|
||||
|
||||
-----
|
||||
# Markdown.js
|
||||
|
||||
* Provided by [Markdown.js](https://github.com/evilstreak/markdown-js) in [extras/](https://github.com/impress/impress.js/tree/master/extras)
|
||||
* Jot down your bullet points in *Markdown* & have it automatically converted to HTML
|
||||
* Note: The Markdown is converted into a presentation client side, in the browser. This is unlike
|
||||
existing tools like [Hovercraft](https://github.com/regebro/hovercraft) and
|
||||
markdown-impress where you generate a new
|
||||
html file on the command line.
|
||||
* This combines the ease of typing Markdown with the full power of impress.js HTML5+CSS3+JavaScript!
|
||||
|
||||
-----
|
||||
# Styles
|
||||
|
||||
* You can use *italics* & **bold**
|
||||
* ...and `code`
|
||||
|
||||
|
||||
-----
|
||||
# A blockquote & image
|
||||
|
||||

|
||||
|
||||
> Spread love everywhere you go.
|
||||
> Let no one ever come to you without leaving happier.
|
||||
|
||||
*-- Mother Teresa*
|
||||
|
||||
Image credit: [Peta de Aztlan](https://www.flickr.com/photos/peta-de-aztlan/3476636111/)@Flickr. CC-BY 2.0
|
||||
|
||||
-----
|
||||
# Code
|
||||
|
||||
When also using [Highlight.js](https://highlightjs.org/) integration, code blocks in Markdown
|
||||
are converted to HTML first, then colored by Highlight.js:
|
||||
|
||||
// `init` API function that initializes (and runs) the presentation.
|
||||
var init = function () {
|
||||
if (initialized) { return; }
|
||||
execPreInitPlugins();
|
||||
|
||||
// First we set up the viewport for mobile devices.
|
||||
// For some reason iPad goes nuts when it is not done properly.
|
||||
var meta = $("meta[name='viewport']") || document.createElement("meta");
|
||||
meta.content = "width=device-width, minimum-scale=1, maximum-scale=1, user-scalable=no";
|
||||
if (meta.parentNode !== document.head) {
|
||||
meta.name = 'viewport';
|
||||
document.head.appendChild(meta);
|
||||
}
|
||||
|
||||
-----
|
||||
|
||||
# Slide separator
|
||||
|
||||
* 5 dashes are used to separate slides:
|
||||
|
||||
`-----`
|
||||
|
||||
* Attributes from `div.step` element are simply repeated.
|
||||
* Better use relative positioning, lest your slides will all be on top of each other.
|
||||
* If you need to set some attributes, just use HTML and create a div element, then write
|
||||
Markdown inside each div.
|
||||
</div>
|
||||
|
||||
<div id="title-slide" class="step slide title markdown" data-x="2000" data-y="5000">
|
||||
# Title slide
|
||||
## This slide has different CSS class than the previous ones
|
||||
</div>
|
||||
|
||||
|
||||
<div id="tilted-slide" class="step slide markdown" data-rotate="-85" data-x="2000" data-y="2000" data-z="1000" data-scale="4">
|
||||
# Simplicity of Markdown & Full power of Impress.js
|
||||
|
||||
* This slide sets its own `rotate`, `x`, `y`, and even `z` coordinates
|
||||
* Note that the Mother Teresa slide earlier was pimped with some custom CSS, all the while
|
||||
the content was written in simple Markdown.
|
||||
</div>
|
||||
|
||||
<div class="step slide title markdown" data-rotate="-85" data-x="4000" data-y="2000" data-markdown-dialect="Maruku">
|
||||
This is an example of a slide with a specific Markdown dialect.
|
||||
===============================================================
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var enableBwCss = function(){
|
||||
disableDevopsCss();
|
||||
disableEffectsCss();
|
||||
};
|
||||
|
||||
var enableDevopsCss = function(){
|
||||
document.body.classList.add("devopsy");
|
||||
disableEffectsCss();
|
||||
};
|
||||
|
||||
var disableDevopsCss = function(){
|
||||
document.body.classList.remove("devopsy");
|
||||
};
|
||||
|
||||
var enableEffectsCss = function(){
|
||||
document.body.classList.add("effects");
|
||||
disableDevopsCss();
|
||||
};
|
||||
|
||||
var disableEffectsCss = function(){
|
||||
document.body.classList.remove("effects");
|
||||
};
|
||||
</script>
|
||||
|
||||
|
||||
<div id="js-slide" class="step slide" data-rotate="0" data-x="4000" data-y="5000">
|
||||
<h1>CSS & JavaScript magic</h1>
|
||||
|
||||
<p>Just to emphasize my point, this last slide allows you to use a JavaScript powered menu to
|
||||
toggle the CSS style:</p>
|
||||
|
||||
<p><a href="#" onclick="enableBwCss();" class="css-menu-bw">Black & white</a>,
|
||||
<a href="#" onclick="enableDevopsCss();" class="css-menu-devopsy">Devopsy</a>,
|
||||
<a href="#" onclick="enableEffectsCss();" class="css-menu-effects">Effects overload</a></p>
|
||||
|
||||
<p>Simplicity of Markdown married with full power of Impress.js!</p>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div id="overview" class="step" data-x="5000" data-y="4000" data-scale="10" style="pointer-events: none;" data-rotate="5">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="impress-toolbar"></div>
|
||||
<div id="impress-help"></div>
|
||||
|
||||
|
||||
<!-- Extra modules
|
||||
Load highlight.js, mermaid.js and markdown.js from extras.
|
||||
See also src/plugins/extras/extras.js -->
|
||||
<script type="text/javascript" src="../../extras/highlight/highlight.pack.js"></script>
|
||||
<script type="text/javascript" src="../../extras/mermaid/mermaid.min.js"></script>
|
||||
<script type="text/javascript" src="../../extras/markdown/markdown.js"></script>
|
||||
<!-- <script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script> -->
|
||||
|
||||
<!--
|
||||
To make all described above really work, you need to include impress.js in the page.
|
||||
You also need to call a `impress().init()` function to initialize impress.js presentation.
|
||||
And you should do it in the end of your document.
|
||||
-->
|
||||
<script type="text/javascript" src="../../js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
</body>
|
||||
</html>
|
||||
469
website/demo/index.html
Normal file
@@ -0,0 +1,469 @@
|
||||
<!doctype html>
|
||||
|
||||
<!--
|
||||
|
||||
Welcome to the light side of the source, young padawan.
|
||||
|
||||
One step closer to learn something interesting you are...
|
||||
|
||||
____
|
||||
_.' : `._
|
||||
.-.'`. ; .'`.-.
|
||||
__ / : ___\ ; /___ ; \ __
|
||||
,'_ ""=-.:__;".-.";: :".-.":__;.-="" _`,
|
||||
:' `.t""=-.. '<@.`;_ ',@:` ..-=""j.' `;
|
||||
`:-.._J '-.-'L__ `-.-' L_..-;'
|
||||
"-.__ ; .-" "-. : __.-"
|
||||
L ' /.======.\ ' J
|
||||
"-. "__" .-"
|
||||
__.l"-:_JL_;-";.__
|
||||
.-j/'.; ;"""" / .'\"-.
|
||||
.' /:`. "-.: .-" .'; `.
|
||||
.-" / ; "-. "-..-" .-" : "-.
|
||||
.+"-. : : "-.__.-" ;-._ \
|
||||
; \ `.; ; : : "+. ;
|
||||
: ; ; ; : ; : \:
|
||||
; : ; : ;: ; :
|
||||
: \ ; : ; : ; / ::
|
||||
; ; : ; : ; : ;:
|
||||
: : ; : ; : : ; : ;
|
||||
;\ : ; : ; ; ; ;
|
||||
: `."-; : ; : ; / ;
|
||||
; -: ; : ; : .-" :
|
||||
:\ \ : ; : \.-" :
|
||||
;`. \ ; : ;.'_..-= / ;
|
||||
: "-. "-: ; :/." .' :
|
||||
\ \ : ;/ __ :
|
||||
\ .-`.\ /t-"" ":-+. :
|
||||
`. .-" `l __/ /`. : ; ; \ ;
|
||||
\ .-" .-"-.-" .' .'j \ / ;/
|
||||
\ / .-" /. .'.' ;_:' ;
|
||||
:-""-.`./-.' / `.___.'
|
||||
\ `t ._ /
|
||||
"-.t-._:'
|
||||
|
||||
-->
|
||||
|
||||
<!--
|
||||
|
||||
So you'd like to know how to use impress.js?
|
||||
|
||||
You've made the first, very important step - you're reading the source code.
|
||||
And that's how impress.js presentations are built - with HTML and CSS code.
|
||||
|
||||
Believe me, you need quite decent HTML and CSS skills to be able to use impress.js effectively.
|
||||
More importantly, you need to be a designer. There are no default styles or layouts for impress.js presentations.
|
||||
|
||||
You need to design and build it by hand.
|
||||
|
||||
So...
|
||||
|
||||
Would you still like to know how to use impress.js?
|
||||
|
||||
-->
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=1024" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<title>impress.js | presentation tool based on the power of CSS3 transforms and transitions in modern browsers | by Bartek Szopka @bartaz</title>
|
||||
|
||||
<meta name="description" content="impress.js is a presentation tool based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com." />
|
||||
<meta name="author" content="Bartek Szopka" />
|
||||
|
||||
<link href="//fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic" rel="stylesheet" />
|
||||
|
||||
<!--
|
||||
|
||||
Impress.js doesn't depend on any external stylesheets. It adds all of the styles it needs for the
|
||||
presentation to work.
|
||||
|
||||
This style below contains styles only for demo presentation. Browse it to see how impress.js
|
||||
classes are used to style presentation steps, or how to apply fallback styles, but I don't want
|
||||
you to use them directly in your presentation.
|
||||
|
||||
Be creative, build your own. We don't really want all impress.js presentations to look the same,
|
||||
do we?
|
||||
|
||||
When creating your own presentation get rid of this file. Start from scratch, it's fun!
|
||||
|
||||
-->
|
||||
<link href="css/impress-demo.css" rel="stylesheet" />
|
||||
<link href="css/impress-common.css" rel="stylesheet" />
|
||||
|
||||
<link rel="shortcut icon" href="favicon.png" />
|
||||
<link rel="apple-touch-icon" href="apple-touch-icon.png" />
|
||||
</head>
|
||||
|
||||
<!--
|
||||
|
||||
Body element is used by impress.js to set some useful class names, that will allow you to detect
|
||||
the support and state of the presentation in CSS or other scripts.
|
||||
|
||||
First very useful class name is `impress-not-supported`. This class means, that browser doesn't
|
||||
support features required by impress.js, so you should apply some fallback styles in your CSS.
|
||||
It's not necessary to add it manually on this element. If the script detects that browser is not
|
||||
good enough it will add this class, but keeping it in HTML means that users without JavaScript
|
||||
will also get fallback styles.
|
||||
|
||||
When impress.js script detects that browser supports all required features, this class name will
|
||||
be removed.
|
||||
|
||||
The class name on body element also depends on currently active presentation step. More details about
|
||||
it can be found later, when `hint` element is being described.
|
||||
|
||||
-->
|
||||
<body class="impress-not-supported">
|
||||
|
||||
<!--
|
||||
For example this fallback message is only visible when there is `impress-not-supported` class on body.
|
||||
-->
|
||||
<div class="fallback-message">
|
||||
<p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
|
||||
<p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
Now that's the core element used by impress.js.
|
||||
|
||||
That's the wrapper for your presentation steps. In this element all the impress.js magic happens.
|
||||
It doesn't have to be a `<div>`. Only `id` is important here as that's how the script find it.
|
||||
|
||||
Often you don't need to use any attributes here, but for educational purposes I have used all of them below.
|
||||
|
||||
To change the duration of the transition between slides use `data-transition-duration="2000"` giving it
|
||||
a number of ms. It defaults to 1000 (1s).
|
||||
|
||||
When authoring impress.js presentations, you should target some screen size, which you can define here.
|
||||
The default is 1024 x 768. You should write your CSS as if this is the screen size used for the
|
||||
presentation. When you present your presentation on a screen (or browser window) of different size,
|
||||
impress.js will automatically scale the presentation to fit the screen. The minimum and maximum limits
|
||||
to this scaling can also be defined here.
|
||||
|
||||
NOTE: I intend to change the defaults to target HD screens in 2021. So you may want to make a habit
|
||||
of explicitly defining these attributes for now, to avoid any disruption when the defaults change.
|
||||
|
||||
You can also control the perspective with `data-perspective="500"` giving it a number of pixels.
|
||||
It defaults to 1000. You can set it to 0 if you don't want any 3D effects.
|
||||
If you are willing to change this value make sure you understand how CSS perspective works:
|
||||
https://developer.mozilla.org/en/CSS/perspective
|
||||
|
||||
Plugins:
|
||||
|
||||
We set the default time for autoplay plugin to 7 seconds. Autoplay will automatically advance
|
||||
to next slide after a timeout expires.
|
||||
-->
|
||||
<div id="impress"
|
||||
data-transition-duration="1000"
|
||||
|
||||
data-width="1024"
|
||||
data-height="768"
|
||||
data-max-scale="3"
|
||||
data-min-scale="0"
|
||||
data-perspective="1000"
|
||||
|
||||
data-autoplay="7">
|
||||
|
||||
<!--
|
||||
|
||||
Here is where interesting thing start to happen.
|
||||
|
||||
Each step of the presentation should be an element inside the `#impress` with a class name
|
||||
of `step`. These step elements are positioned, rotated and scaled by impress.js, and
|
||||
the 'camera' shows them on each step of the presentation.
|
||||
|
||||
Positioning information is passed through data attributes.
|
||||
|
||||
In the example below we only specify x and y position of the step element with `data-x="-1000"`
|
||||
and `data-y="-1500"` attributes. This means that **the center** of the element (yes, the center)
|
||||
will be positioned in point x = -1000px and y = -1500px of the presentation 'canvas'.
|
||||
|
||||
It will not be rotated or scaled.
|
||||
|
||||
--------
|
||||
Plugins: For first slide, set the autoplay time to a custom 10 seconds.
|
||||
|
||||
-->
|
||||
<div id="bored" class="step slide" data-x="-1000" data-y="-1500" data-autoplay="10">
|
||||
<q>Aren’t you just <b>bored</b> with all those slides-based presentations?</q>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
The `id` attribute of the step element is used to identify it in the URL, but it's optional.
|
||||
If it is not defined, it will get a default value of `step-N` where N is a number of slide.
|
||||
|
||||
So in the example below it'll be `step-2`.
|
||||
|
||||
The hash part of the url when this step is active will be `#/step-2`.
|
||||
|
||||
You can also use `#step-2` in a link, to point directly to this particular step.
|
||||
|
||||
Please note, that while `#/step-2` (with slash) would also work in a link it's not recommended.
|
||||
Using classic `id`-based links like `#step-2` makes these links usable also in fallback mode.
|
||||
|
||||
-->
|
||||
<div class="step slide" data-x="0" data-y="-1500">
|
||||
<q>Don’t you think that presentations given <strong>in modern browsers</strong> shouldn’t <strong>copy the limits</strong> of ‘classic’ slide decks?</q>
|
||||
</div>
|
||||
|
||||
<div class="step slide" data-x="1000" data-y="-1500">
|
||||
<q>Would you like to <strong>impress your audience</strong> with <strong>stunning visualization</strong> of your talk?</q>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
This is an example of step element being scaled.
|
||||
|
||||
Again, we use a `data-` attribute, this time it's `data-scale="4"`, so it means that this
|
||||
element will be 4 times larger than the others.
|
||||
From presentation and transitions point of view it means, that it will have to be scaled
|
||||
down (4 times) to make it back to its correct size.
|
||||
|
||||
-->
|
||||
<div id="title" class="step" data-x="0" data-y="0" data-scale="4">
|
||||
<span class="try">then you should try</span>
|
||||
<h1>impress.js<sup>*</sup></h1>
|
||||
<span class="footnote"><sup>*</sup> no rhyme intended</span>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
This element introduces rotation.
|
||||
|
||||
Notation shouldn't be a surprise. We use `data-rotate="90"` attribute, meaning that this
|
||||
element should be rotated by 90 degrees clockwise.
|
||||
|
||||
-->
|
||||
<div id="its" class="step" data-x="850" data-y="3000" data-rotate="90" data-scale="5">
|
||||
<p>It’s a <strong>presentation tool</strong> <br/>
|
||||
inspired by the idea behind <a href="http://prezi.com">prezi.com</a> <br/>
|
||||
and based on the <strong>power of CSS3 transforms and transitions</strong> in modern browsers.</p>
|
||||
</div>
|
||||
|
||||
<div id="big" class="step" data-x="3500" data-y="2100" data-rotate="180" data-scale="6">
|
||||
<p>visualize your <b>big</b> <span class="thoughts">thoughts</span></p>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
And now it gets really exciting! We move into third dimension!
|
||||
|
||||
Along with `data-x` and `data-y`, you can define the position on third (Z) axis, with
|
||||
`data-z`. In the example below we use `data-z="-3000"` meaning that element should be
|
||||
positioned far away from us (by 3000px).
|
||||
|
||||
-->
|
||||
<div id="tiny" class="step" data-x="2825" data-y="2325" data-z="-3000" data-rotate="300" data-scale="1">
|
||||
<p>and <b>tiny</b> ideas</p>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
This step here doesn't introduce anything new when it comes to data attributes, but you
|
||||
should notice in the demo that some words of this text are being animated.
|
||||
It's a very basic CSS transition that is applied to the elements when this step element is
|
||||
reached.
|
||||
|
||||
At the very beginning of the presentation all step elements are given the class of `future`.
|
||||
It means that they haven't been visited yet.
|
||||
|
||||
When the presentation moves to given step `future` is changed to `present` class name.
|
||||
That's how animation on this step works - text moves when the step has `present` class.
|
||||
|
||||
Finally when the step is left the `present` class is removed from the element and `past`
|
||||
class is added.
|
||||
|
||||
So basically every step element has one of three classes: `future`, `present` and `past`.
|
||||
Only one current step has the `present` class.
|
||||
|
||||
Note: data-x/y/z attributes, if not defined, by default will inherit the value of the
|
||||
previous step. So to get back to 0 on the z-axis, we must set it to 0.
|
||||
See src/plugins/rel/README.md for more information.
|
||||
|
||||
-->
|
||||
<div id="ing" class="step" data-x="3500" data-y="-850" data-z="0" data-rotate="270" data-scale="6">
|
||||
<p>by <b class="positioning">positioning</b>, <b class="rotating">rotating</b> and <b class="scaling">scaling</b> them on an infinite canvas</p>
|
||||
</div>
|
||||
|
||||
<div id="imagination" class="step" data-x="6700" data-y="-300" data-scale="6">
|
||||
<p>the only <b>limit</b> is your <b class="imagination">imagination</b></p>
|
||||
</div>
|
||||
|
||||
<div id="source" class="step" data-x="6300" data-y="2000" data-rotate="20" data-scale="4">
|
||||
<p>want to know more?</p>
|
||||
<q><a href="http://github.com/impress/impress.js">use the source</a>, Luke!</q>
|
||||
</div>
|
||||
|
||||
<div id="one-more-thing" class="step" data-x="6000" data-y="4000" data-scale="2">
|
||||
<p>one more thing...</p>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
And the last one shows full power and flexibility of impress.js.
|
||||
|
||||
You can not only position element in 3D, but also rotate it around any axis.
|
||||
So this one here will get rotated by -40 degrees (40 degrees anticlockwise) around X axis and
|
||||
10 degrees (clockwise) around Y axis.
|
||||
|
||||
You can of course rotate it around Z axis with `data-rotate-z` - it has exactly the same effect
|
||||
as `data-rotate` (these two are basically aliases).
|
||||
|
||||
-->
|
||||
<div id="its-in-3d" class="step" data-x="6200" data-y="4300" data-z="-100" data-rotate-x="-40" data-rotate-y="10" data-scale="2">
|
||||
<p><span class="have">have</span> <span class="you">you</span> <span class="noticed">noticed</span> <span class="its">it’s</span> <span class="in">in</span> <b>3D<sup>*</sup></b>?</p>
|
||||
<span class="footnote">* beat that, prezi ;)</span>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
|
||||
So to summarize of all the possible attributes used to position presentation steps, we have:
|
||||
|
||||
* `data-x`, `data-y`, `data-z` - they define the position of **the center** of step element on
|
||||
the canvas in pixels; their default value is 0;
|
||||
* `data-rotate-x`, `data-rotate-y`, 'data-rotate-z`, `data-rotate` - they define the rotation of
|
||||
the element around given axis in degrees; their default value is 0; `data-rotate` and `data-rotate-z`
|
||||
are exactly the same;
|
||||
* `data-scale` - defines the scale of step element; default value is 1
|
||||
|
||||
These values are used by impress.js in CSS transformation functions, so for more information consult
|
||||
CSS transfrom docs: https://developer.mozilla.org/en/CSS/transform
|
||||
|
||||
-->
|
||||
<div id="overview" class="step" data-x="3000" data-y="1500" data-z="0" data-scale="10">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!--
|
||||
This is a UI plugin. You can read more about plugins in src/plugins/README.md.
|
||||
For now, I'll just tell you that this adds some graphical controls to navigate the
|
||||
presentation. In the CSS file you can style them as you want. We've put them bottom right.
|
||||
-->
|
||||
<div id="impress-toolbar"></div>
|
||||
|
||||
<!--
|
||||
|
||||
Hint is not related to impress.js in any way.
|
||||
|
||||
But it can show you how to use impress.js features in creative way.
|
||||
|
||||
When the presentation step is shown (selected) its element gets the class of "active" and the body element
|
||||
gets the class based on active step id `impress-on-ID` (where ID is the step's id)... It may not be
|
||||
so clear because of all these "ids" in previous sentence, so for example when the first step (the one with
|
||||
the id of `bored`) is active, body element gets a class of `impress-on-bored`.
|
||||
|
||||
This class is used by this hint below. Check CSS file to see how it's shown with delayed CSS animation when
|
||||
the first step of presentation is visible for a couple of seconds.
|
||||
|
||||
...
|
||||
|
||||
And when it comes to this piece of JavaScript below ... kids, don't do this at home ;)
|
||||
It's just a quick and dirty workaround to get different hint text for touch devices.
|
||||
In a real world it should be at least placed in separate JS file ... and the touch content should be
|
||||
probably just hidden somewhere in HTML - not hard-coded in the script.
|
||||
|
||||
Just sayin' ;)
|
||||
|
||||
-->
|
||||
<div class="hint">
|
||||
<p>Use a spacebar or arrow keys to navigate. <br/>
|
||||
Press 'P' to launch speaker console.</p>
|
||||
</div>
|
||||
<script>
|
||||
if ("ontouchstart" in document.documentElement) {
|
||||
document.querySelector(".hint").innerHTML = "<p>Swipe left or right to navigate</p>";
|
||||
}
|
||||
</script>
|
||||
|
||||
<!--
|
||||
|
||||
Last, but not least.
|
||||
|
||||
To make all described above really work, you need to include impress.js in the page.
|
||||
I strongly encourage to minify it first.
|
||||
|
||||
In here I just include full source of the script to make it more readable.
|
||||
|
||||
You also need to call a `impress().init()` function to initialize impress.js presentation.
|
||||
And you should do it in the end of your document. Not only because it's a good practice, but also
|
||||
because it should be done when the whole document is ready.
|
||||
Of course you can wrap it in any kind of "DOM ready" event, but I was too lazy to do so ;)
|
||||
|
||||
-->
|
||||
<script src="js/impress.js"></script>
|
||||
<script>impress().init();</script>
|
||||
|
||||
<!--
|
||||
|
||||
The `impress()` function also gives you access to the API that controls the presentation.
|
||||
|
||||
Just store the result of the call:
|
||||
|
||||
var api = impress();
|
||||
|
||||
and you will get three functions you can call:
|
||||
|
||||
`api.init()` - initializes the presentation,
|
||||
`api.next()` - moves to next step of the presentation,
|
||||
`api.prev()` - moves to previous step of the presentation,
|
||||
`api.goto( stepIndex | stepElementId | stepElement, [duration] )` - moves the presentation to the step given by its index number
|
||||
id or the DOM element; second parameter can be used to define duration of the transition in ms,
|
||||
but it's optional - if not provided default transition duration for the presentation will be used.
|
||||
|
||||
You can also simply call `impress()` again to get the API, so `impress().next()` is also allowed.
|
||||
Don't worry, it wont initialize the presentation again.
|
||||
|
||||
For some example uses of this API check the last part of the source of impress.js where the API
|
||||
is used in event handlers.
|
||||
|
||||
-->
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<!--
|
||||
|
||||
Now you know more or less everything you need to build your first impress.js presentation, but before
|
||||
you start...
|
||||
|
||||
Oh, you've already cloned the code from GitHub?
|
||||
|
||||
You have it open in text editor?
|
||||
|
||||
Stop right there!
|
||||
|
||||
That's not how you create awesome presentations. This is only a code. Implementation of the idea that
|
||||
first needs to grow in your mind.
|
||||
|
||||
So if you want to build great presentation take a pencil and piece of paper. And turn off the computer.
|
||||
|
||||
Sketch, draw and write. Brainstorm your ideas on a paper. Try to build a mind-map of what you'd like
|
||||
to present. It will get you closer and closer to the layout you'll build later with impress.js.
|
||||
|
||||
Get back to the code only when you have your presentation ready on a paper. It doesn't make sense to do
|
||||
it earlier, because you'll only waste your time fighting with positioning of useless points.
|
||||
|
||||
If you think I'm crazy, please put your hands on a book called "Presentation Zen". It's all about
|
||||
creating awesome and engaging presentations.
|
||||
|
||||
Think about it. 'Cause impress.js may not help you, if you have nothing interesting to say.
|
||||
|
||||
-->
|
||||
|
||||
<!--
|
||||
|
||||
Are you still reading this?
|
||||
|
||||
For real? I'm impressed!
|
||||
|
||||
But now, take my advice and take some time off. Make yourself a cup of coffee, tea,
|
||||
or anything you like to drink.
|
||||
|
||||
Cheers!
|
||||
|
||||
-->
|
||||
|
||||