Cornell Talk Notes
This commit is contained in:
parent
515357ce30
commit
76a77716d4
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/ankur.jpg
Normal file
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/ankur.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/darshana.jpg
Normal file
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/darshana.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/hank.jpg
Normal file
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/hank.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/luke.png
Normal file
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/luke.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 441 KiB |
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/saurav.jpg
Normal file
BIN
slides/talks/2017-4-Cornell-JITDs/graphics/saurav.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 72 KiB |
225
slides/talks/2017-4-Cornell-JITDs/index.html
Normal file
225
slides/talks/2017-4-Cornell-JITDs/index.html
Normal file
|
@ -0,0 +1,225 @@
|
|||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
|
||||
<title>Just-in-Time Data Structures</title>
|
||||
|
||||
<meta name="description" content="Small Data">
|
||||
<meta name="author" content="Oliver Kennedy">
|
||||
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
|
||||
|
||||
<link rel="stylesheet" href="../reveal.js-3.1.0/css/reveal.css">
|
||||
<link rel="stylesheet" href="ubodin.css" id="theme">
|
||||
|
||||
<!-- Code syntax highlighting -->
|
||||
<link rel="stylesheet" href="../reveal.js-3.1.0/lib/css/zenburn.css">
|
||||
|
||||
|
||||
<style>
|
||||
table.panelists td.name {
|
||||
text-align: right;
|
||||
}
|
||||
table.panelists td.affiliation {
|
||||
font-size: smaller;
|
||||
text-decoration: italic;
|
||||
text-align: left;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- Printing and PDF exports -->
|
||||
<script>
|
||||
var link = document.createElement( 'link' );
|
||||
link.rel = 'stylesheet';
|
||||
link.type = 'text/css';
|
||||
link.href = window.location.search.match( /print-pdf/gi ) ? '../reveal.js-3.1.0/css/print/pdf.css' : '../reveal.js-3.1.0/css/print/paper.css';
|
||||
document.getElementsByTagName( 'head' )[0].appendChild( link );
|
||||
</script>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../reveal.js-3.1.0/lib/js/html5shiv.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="reveal">
|
||||
|
||||
<div class="header">
|
||||
<!-- Any Talk-Specific Header Content Goes Here -->
|
||||
<center>
|
||||
<a href="http://www.buffalo.edu" target="_blank">
|
||||
<img src="../graphics/logos/ub-1line-ro-white.png" height="20"/>
|
||||
</a>
|
||||
</center>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<!-- Any Talk-Specific Footer Content Goes Here -->
|
||||
<div style="float: left; margin-top: 15px; ">
|
||||
Exploring <u><b>O</b></u>nline <u><b>D</b></u>ata <u><b>In</b></u>teractions
|
||||
</div>
|
||||
<a href="https://odin.cse.buffalo.edu" target="_blank">
|
||||
<img src="../graphics/logos/odin-1line-white.png" height="40" style="float: right;"/>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="slides">
|
||||
<!-- Any section element inside of this container is displayed as a slide -->
|
||||
|
||||
<section>
|
||||
<!-- Credits... introduce everyone, etc... -->
|
||||
<section>
|
||||
<h2>Just-in-Time Data Structures</h2>
|
||||
<h4>Oliver Kennedy</h4>
|
||||
<h4><a href="mailto:okennedy@buffalo.edu">okennedy@buffalo.edu</a></h4>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<table>
|
||||
<tr>
|
||||
<td width="150px"><img src="graphics/saurav.jpg" height="150px"/></td>
|
||||
<td width="150px"><img src="graphics/darshana.jpg" height="150px"/></td>
|
||||
<td width="150px"><img src="graphics/hank.jpg" height="150px"/></td>
|
||||
<td width="150px"><img src="graphics/ankur.jpg" height="150px"/></td>
|
||||
<td width="150px"><img src="graphics/luke.png" height="150px"/></td>
|
||||
</tr>
|
||||
<tr style="font-size: smaller;">
|
||||
<td>Saurav Singhi</td>
|
||||
<td>Darshana Balakrishnan<br/</td>
|
||||
<td>Hank Lin</td>
|
||||
<td>Ankur Upadhyay</td>
|
||||
<td>Lukasz Ziarek</td>
|
||||
</tr>
|
||||
<tr style="font-size: small;">
|
||||
<td>(PhD In Progress)</td>
|
||||
<td>(MS In Progress)</td>
|
||||
<td>(BS 2017)</td>
|
||||
<td>(MS 2014)</td>
|
||||
<td>(Asst. Prof @ UB)</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- Establish the setting:
|
||||
- Data Structures are a game of trade-offs.
|
||||
- Which structure is best? Well, it depends!
|
||||
- Specific data structures lock you in to a specific set of tradeoffs:
|
||||
- Read vs Write
|
||||
- Batch vs Individual Updates
|
||||
- Scan vs Lookup vs Range Queries
|
||||
-->
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- Get deeper in to the problem:
|
||||
- Dynamic workloads: (E.g., Data Loading -> Data access || Regional Differences in Access Patterns)
|
||||
- State of the art:
|
||||
- Option 1: Trash the old data structure and build a new one (and you're left twiddling your thumbs while you wait)
|
||||
- Option 2: Design a data structure *specifically* for your transitional needs (e.g., LSM trees)
|
||||
- What would it take to allow a data structure to incrementally transition from one set of tradeoffs to another one?
|
||||
- Challenge: We have no way to work with, or even to describe such an "intermediate" data structure in the middle of transitioning
|
||||
- Talk outline:
|
||||
- A Universal Data Structure Instance description language
|
||||
- Accessing and Modifying Static Data Structures
|
||||
- Optimizing Static Data Structures
|
||||
- Dynamic Data
|
||||
- Policy Discovery and Optimization
|
||||
-->
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- A Universal Data Structure Instance description language
|
||||
- Initial goal: Describing an instance of a data structure at one specific point in time.
|
||||
- Approach: Commonalities between different data structures... standard patterns
|
||||
- Records
|
||||
- Pointers (to a address of a physical entity that describes a collection of records)
|
||||
- Semantics (explicit or implicit properties of the physical layout that can improve queries over the ds)
|
||||
- Specifics: Specific building blocks
|
||||
- [X] U [Y]
|
||||
- Record
|
||||
- Generalizations:
|
||||
- Repetition (requires array notation)
|
||||
- Semantic Extensions (Binary Tree, Hash Table, Sorted Array)
|
||||
- Language (CFG for data structure instances)
|
||||
- Examples (borrow from paper?)
|
||||
-->
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- Accessing Static Data Structures
|
||||
- Queries as morphisms on the language
|
||||
- Enumeration + Pop
|
||||
- Lookups
|
||||
- Scans
|
||||
-->
|
||||
<!-- Dynamic Data
|
||||
- Do the minimum work possible: Linked List
|
||||
-->
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- Optimizing Static Data Structures
|
||||
- Pattern + Replacement Language
|
||||
- Events
|
||||
- Examples
|
||||
- Cracker Index
|
||||
- Splay Tree
|
||||
- Lazy BTree
|
||||
-->
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<!-- Policy Discovery and Optimization
|
||||
- Purely Heuristic Design: Cracker Index / Transition Policy / Splay Trees
|
||||
- Assisted Discovery: Parameterized Search Space + Cost Model
|
||||
- Autonomous Discovery:
|
||||
- Simulation-Based
|
||||
- (Likely Expensive) Chase-style
|
||||
-->
|
||||
</section>
|
||||
|
||||
|
||||
</div></div>
|
||||
|
||||
<script src="../reveal.js-3.1.0/lib/js/head.min.js"></script>
|
||||
<script src="../reveal.js-3.1.0/js/reveal.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
// Full list of configuration options available at:
|
||||
// https://github.com/hakimel/../reveal.js#configuration
|
||||
Reveal.initialize({
|
||||
controls: false,
|
||||
progress: true,
|
||||
history: true,
|
||||
center: true,
|
||||
slideNumber: true,
|
||||
|
||||
transition: 'fade', // none/fade/slide/convex/concave/zoom
|
||||
|
||||
// Optional ../reveal.js plugins
|
||||
dependencies: [
|
||||
{ src: '../reveal.js-3.1.0/lib/js/classList.js', condition: function() { return !document.body.classList; } },
|
||||
{ src: '../reveal.js-3.1.0/plugin/math/math.js',
|
||||
condition: function() { return true; },
|
||||
mathjax: '../reveal.js-3.1.0/js/MathJax.js'
|
||||
},
|
||||
{ src: '../reveal.js-3.1.0/plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||||
{ src: '../reveal.js-3.1.0/plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||||
{ src: '../reveal.js-3.1.0/plugin/highlight/highlight.js', async: true, condition: function() { return !!document.querySelector( 'pre code' ); }, callback: function() { hljs.initHighlightingOnLoad(); } },
|
||||
{ src: '../reveal.js-3.1.0/plugin/zoom-js/zoom.js', async: true },
|
||||
{ src: '../reveal.js-3.1.0/plugin/notes/notes.js', async: true }
|
||||
]
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
366
slides/talks/2017-4-Cornell-JITDs/ubodin.css
Normal file
366
slides/talks/2017-4-Cornell-JITDs/ubodin.css
Normal file
|
@ -0,0 +1,366 @@
|
|||
@font-face {
|
||||
font-family: 'News Cycle';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('News Cycle'), local('NewsCycle'), url(../reveal.js-3.1.0/fonts/9Xe8dq6pQDsPyVH2D3tMQsDdSZkkecOE1hvV7ZHvhyU.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'News Cycle';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('News Cycle Bold'), local('NewsCycle-Bold'), url(../reveal.js-3.1.0/fonts/G28Ny31cr5orMqEQy6ljt8BaWKZ57bY3RXgXH6dOjZ0.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: local('Lato Regular'), local('Lato-Regular'), url(../reveal.js-3.1.0/fonts/1EqTbJWOZQBfhZ0e3RL9uvesZW2xOQ-xsNqO47m55DA.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: local('Lato Bold'), local('Lato-Bold'), url(../reveal.js-3.1.0/fonts/MZ1aViPqjfvZwVD_tzjjkwLUuEpTyoUstqEm5AMlJo4.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: local('Lato Italic'), local('Lato-Italic'), url(../reveal.js-3.1.0/fonts/61V2bQZoWB5DkWAUJStypevvDin1pK8aKteLpeZ5c0A.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
src: local('Lato Bold Italic'), local('Lato-BoldItalic'), url(../reveal.js-3.1.0/fonts/HkF_qI1x_noxlxhrhMQYECZ2oysoEQEeKwjgmXLRnTc.ttf) format('truetype');
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**@import url(https://fonts.googleapis.com/css?family=News+Cycle:400,700);
|
||||
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
|
||||
**/
|
||||
/**
|
||||
* A simple theme for reveal.js presentations, similar
|
||||
* to the default theme. The accent color is darkblue.
|
||||
*
|
||||
* This theme is Copyright (C) 2012 Owen Versteeg, https://github.com/StereotypicalApps. It is MIT licensed.
|
||||
* reveal.js is Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
|
||||
*/
|
||||
/*********************************************
|
||||
* GLOBAL STYLES
|
||||
*********************************************/
|
||||
body {
|
||||
background: #fff;
|
||||
background-color: #fff; }
|
||||
|
||||
*:fullscreen, *:-webkit-full-screen, *:-moz-full-screen {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.reveal {
|
||||
font-family: 'Lato', sans-serif;
|
||||
font-size: 36px;
|
||||
font-weight: normal;
|
||||
color: #000; }
|
||||
|
||||
::selection {
|
||||
color: #fff;
|
||||
background: rgba(0, 0, 0, 0.99);
|
||||
text-shadow: none; }
|
||||
|
||||
.reveal .slides > section, .reveal .slides > section > section {
|
||||
line-height: 1.3;
|
||||
font-weight: inherit; }
|
||||
|
||||
/*********************************************
|
||||
* STATIC HEADER/FOOTER
|
||||
*********************************************/
|
||||
|
||||
.reveal .header {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
right: 0px;
|
||||
height: 25px;
|
||||
text-align: center;
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
padding-bottom: 10px;
|
||||
padding-top: 15px;
|
||||
background-color: #041a9b;
|
||||
color: white;
|
||||
font-size: 0.5em;
|
||||
z-index: 100;
|
||||
}
|
||||
.reveal .footer {
|
||||
position: absolute;
|
||||
bottom: 0px;
|
||||
left: 0px;
|
||||
right: 0px;
|
||||
height: 40px;
|
||||
text-align: center;
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
padding-bottom: 10px;
|
||||
padding-top: 20px;
|
||||
background-color: #041a9b;
|
||||
color: white;
|
||||
font-size: 0.5em;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
|
||||
/*********************************************
|
||||
* HEADERS
|
||||
*********************************************/
|
||||
.reveal h1, .reveal h2, .reveal h3, .reveal h4, .reveal h5, .reveal h6, .reveal .headertext {
|
||||
margin: 0 0 20px 0;
|
||||
color: #000;
|
||||
font-family: 'News Cycle', Impact, sans-serif;
|
||||
font-weight: normal;
|
||||
line-height: 1.2;
|
||||
letter-spacing: normal;
|
||||
text-transform: none;
|
||||
text-shadow: none;
|
||||
word-wrap: break-word; }
|
||||
|
||||
.reveal h1 {
|
||||
font-size: 3.77em; }
|
||||
|
||||
.reveal h2 {
|
||||
font-size: 2.11em; }
|
||||
|
||||
.reveal h3 {
|
||||
font-size: 1.55em; }
|
||||
|
||||
.reveal h4 {
|
||||
font-size: 1em; }
|
||||
|
||||
.reveal h1 {
|
||||
text-shadow: none; }
|
||||
|
||||
/*********************************************
|
||||
* OTHER
|
||||
*********************************************/
|
||||
.reveal p {
|
||||
margin: 20px 0;
|
||||
line-height: 1.3; }
|
||||
|
||||
.reveal attribution {
|
||||
font-size: 0.5em;
|
||||
position: absolute;
|
||||
right: -10px;
|
||||
bottom: -10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* Ensure certain elements are never larger than the slide itself */
|
||||
.reveal img, .reveal video, .reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%; }
|
||||
|
||||
.reveal strong, .reveal b {
|
||||
font-weight: bold; }
|
||||
|
||||
.reveal em {
|
||||
font-style: italic; }
|
||||
|
||||
.reveal ol, .reveal dl, .reveal ul {
|
||||
display: inline-block;
|
||||
text-align: left;
|
||||
margin: 0 0 0 1em; }
|
||||
|
||||
.reveal ol {
|
||||
list-style-type: decimal; }
|
||||
|
||||
.reveal ul {
|
||||
list-style-type: disc; }
|
||||
|
||||
.reveal ul > li {
|
||||
margin-top: 20px; }
|
||||
|
||||
.reveal ul ul {
|
||||
list-style-type: square; }
|
||||
|
||||
.reveal ul ul ul {
|
||||
list-style-type: circle; }
|
||||
|
||||
.reveal ul ul, .reveal ul ol, .reveal ol ol, .reveal ol ul {
|
||||
display: block;
|
||||
margin-left: 40px; }
|
||||
|
||||
.reveal dt {
|
||||
font-weight: bold; }
|
||||
|
||||
.reveal dd {
|
||||
margin-left: 40px; }
|
||||
|
||||
.reveal q, .reveal blockquote {
|
||||
quotes: none; }
|
||||
|
||||
.reveal blockquote {
|
||||
display: block;
|
||||
position: relative;
|
||||
width: 70%;
|
||||
margin: 20px auto;
|
||||
padding: 5px;
|
||||
font-style: italic;
|
||||
background: rgba(255, 255, 255, 0.05);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2); }
|
||||
|
||||
.reveal blockquote p:first-child, .reveal blockquote p:last-child {
|
||||
display: inline-block; }
|
||||
|
||||
.reveal q {
|
||||
font-style: italic; }
|
||||
|
||||
.reveal pre {
|
||||
display: block;
|
||||
position: relative;
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
text-align: left;
|
||||
font-size: 0.55em;
|
||||
font-family: monospace;
|
||||
line-height: 1.2em;
|
||||
word-wrap: break-word;
|
||||
box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.3); }
|
||||
|
||||
.reveal code {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
.reveal pre code {
|
||||
display: block;
|
||||
padding: 5px;
|
||||
overflow: auto;
|
||||
max-height: 400px;
|
||||
word-wrap: normal;
|
||||
background: #3F3F3F;
|
||||
color: #DCDCDC; }
|
||||
|
||||
.reveal table {
|
||||
margin: auto;
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0; }
|
||||
|
||||
.reveal table th {
|
||||
font-weight: bold;
|
||||
border-bottom: 1px solid; }
|
||||
|
||||
.reveal table th, .reveal table td {
|
||||
text-align: center;
|
||||
padding: 0.2em 0.5em 0.2em 0.5em;}
|
||||
|
||||
.reveal table th[align="left"], .reveal table td[align="left"] {
|
||||
text-align: left; }
|
||||
|
||||
.reveal table th[align="right"], .reveal table td[align="right"] {
|
||||
text-align: right; }
|
||||
|
||||
.reveal table tr:last-child td {
|
||||
border-bottom: none; }
|
||||
|
||||
.reveal sup {
|
||||
vertical-align: super; }
|
||||
|
||||
.reveal sub {
|
||||
vertical-align: sub; }
|
||||
|
||||
.reveal small, .reveal .smalltext {
|
||||
display: inline-block;
|
||||
font-size: 0.6em;
|
||||
line-height: 1.2em;
|
||||
vertical-align: top; }
|
||||
|
||||
.reveal small * {
|
||||
vertical-align: top; }
|
||||
|
||||
/*********************************************
|
||||
* LINKS
|
||||
*********************************************/
|
||||
.reveal a {
|
||||
color: #00008B;
|
||||
text-decoration: none;
|
||||
-webkit-transition: color 0.15s ease;
|
||||
-moz-transition: color 0.15s ease;
|
||||
transition: color 0.15s ease; }
|
||||
|
||||
.reveal a:hover {
|
||||
color: #0000f1;
|
||||
text-shadow: none;
|
||||
border: none; }
|
||||
|
||||
.reveal .roll span:after {
|
||||
color: #fff;
|
||||
background: #00003f; }
|
||||
|
||||
/*********************************************
|
||||
* IMAGES
|
||||
*********************************************/
|
||||
.reveal section img {
|
||||
margin: 15px 0px;
|
||||
background: rgba(255, 255, 255, 0.12);
|
||||
}
|
||||
|
||||
.reveal section img.bordered
|
||||
{
|
||||
border: 4px solid #000;
|
||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
.reveal a img {
|
||||
-webkit-transition: all 0.15s linear;
|
||||
-moz-transition: all 0.15s linear;
|
||||
transition: all 0.15s linear; }
|
||||
|
||||
.reveal a:hover img {
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
border-color: #00008B;
|
||||
box-shadow: 0 0 20px rgba(0, 0, 0, 0.55); }
|
||||
|
||||
/*********************************************
|
||||
* NAVIGATION CONTROLS
|
||||
*********************************************/
|
||||
.reveal .controls div.navigate-left, .reveal .controls div.navigate-left.enabled {
|
||||
border-right-color: #00008B; }
|
||||
|
||||
.reveal .controls div.navigate-right, .reveal .controls div.navigate-right.enabled {
|
||||
border-left-color: #00008B; }
|
||||
|
||||
.reveal .controls div.navigate-up, .reveal .controls div.navigate-up.enabled {
|
||||
border-bottom-color: #00008B; }
|
||||
|
||||
.reveal .controls div.navigate-down, .reveal .controls div.navigate-down.enabled {
|
||||
border-top-color: #00008B; }
|
||||
|
||||
.reveal .controls div.navigate-left.enabled:hover {
|
||||
border-right-color: #0000f1; }
|
||||
|
||||
.reveal .controls div.navigate-right.enabled:hover {
|
||||
border-left-color: #0000f1; }
|
||||
|
||||
.reveal .controls div.navigate-up.enabled:hover {
|
||||
border-bottom-color: #0000f1; }
|
||||
|
||||
.reveal .controls div.navigate-down.enabled:hover {
|
||||
border-top-color: #0000f1; }
|
||||
|
||||
/*********************************************
|
||||
* PROGRESS BAR
|
||||
*********************************************/
|
||||
.reveal .progress {
|
||||
background: rgba(0, 0, 0, 0.2); }
|
||||
|
||||
.reveal .progress span {
|
||||
background: #00008B;
|
||||
-webkit-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
|
||||
-moz-transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985);
|
||||
transition: width 800ms cubic-bezier(0.26, 0.86, 0.44, 0.985); }
|
||||
|
||||
/*********************************************
|
||||
* SLIDE NUMBER
|
||||
*********************************************/
|
||||
.reveal .slide-number {
|
||||
color: #00008B; }
|
Loading…
Reference in a new issue