apply z position to slide container, rather than individual slides
This commit is contained in:
parent
66d7b6bfae
commit
e0aba9f5ae
3 changed files with 12 additions and 7 deletions
|
@ -627,7 +627,7 @@ body {
|
||||||
/*********************************************
|
/*********************************************
|
||||||
* OVERVIEW
|
* OVERVIEW
|
||||||
*********************************************/
|
*********************************************/
|
||||||
.reveal.overview .slides {
|
.reveal.overview {
|
||||||
-webkit-perspective-origin: 50% 50%;
|
-webkit-perspective-origin: 50% 50%;
|
||||||
perspective-origin: 50% 50%;
|
perspective-origin: 50% 50%;
|
||||||
-webkit-perspective: 700px;
|
-webkit-perspective: 700px;
|
||||||
|
|
|
@ -743,11 +743,10 @@ body {
|
||||||
* OVERVIEW
|
* OVERVIEW
|
||||||
*********************************************/
|
*********************************************/
|
||||||
|
|
||||||
.reveal.overview .slides {
|
.reveal.overview {
|
||||||
perspective-origin: 50% 50%;
|
perspective-origin: 50% 50%;
|
||||||
perspective: 700px;
|
perspective: 700px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.reveal.overview .slides section {
|
.reveal.overview .slides section {
|
||||||
height: 700px;
|
height: 700px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|
14
js/reveal.js
14
js/reveal.js
|
@ -165,6 +165,9 @@
|
||||||
// The current scale of the presentation (see width/height config)
|
// The current scale of the presentation (see width/height config)
|
||||||
scale = 1,
|
scale = 1,
|
||||||
|
|
||||||
|
// The current z position of the presentation container
|
||||||
|
z = 0,
|
||||||
|
|
||||||
// Cached references to DOM elements
|
// Cached references to DOM elements
|
||||||
dom = {},
|
dom = {},
|
||||||
|
|
||||||
|
@ -1470,6 +1473,7 @@
|
||||||
// Prefer zooming in desktop Chrome so that content remains crisp
|
// Prefer zooming in desktop Chrome so that content remains crisp
|
||||||
if( !isMobileDevice && /chrome/i.test( navigator.userAgent ) && typeof dom.slides.style.zoom !== 'undefined' ) {
|
if( !isMobileDevice && /chrome/i.test( navigator.userAgent ) && typeof dom.slides.style.zoom !== 'undefined' ) {
|
||||||
dom.slides.style.zoom = scale;
|
dom.slides.style.zoom = scale;
|
||||||
|
transformElement( dom.slides, 'translateZ(-'+ z +'px)' );
|
||||||
}
|
}
|
||||||
// Apply scale transform as a fallback
|
// Apply scale transform as a fallback
|
||||||
else {
|
else {
|
||||||
|
@ -1477,7 +1481,7 @@
|
||||||
dom.slides.style.top = '50%';
|
dom.slides.style.top = '50%';
|
||||||
dom.slides.style.bottom = 'auto';
|
dom.slides.style.bottom = 'auto';
|
||||||
dom.slides.style.right = 'auto';
|
dom.slides.style.right = 'auto';
|
||||||
transformElement( dom.slides, 'translate(-50%, -50%) scale('+ scale +')' );
|
transformElement( dom.slides, 'translate(-50%, -50%) scale('+ scale +')' + ' translateZ(-'+ z +'px)' );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1635,8 +1639,10 @@
|
||||||
|
|
||||||
var wasActive = dom.wrapper.classList.contains( 'overview' );
|
var wasActive = dom.wrapper.classList.contains( 'overview' );
|
||||||
|
|
||||||
// Vary the depth of the overview based on screen size
|
// Set the depth of the presentation. This determinse how far we
|
||||||
var depth = window.innerWidth < 400 ? 1000 : 2500;
|
// zoom out and varies based on display size. It gets applied at
|
||||||
|
// the layout step.
|
||||||
|
z = window.innerWidth < 400 ? 1000 : 2500;
|
||||||
|
|
||||||
dom.wrapper.classList.add( 'overview' );
|
dom.wrapper.classList.add( 'overview' );
|
||||||
dom.wrapper.classList.remove( 'overview-deactivating' );
|
dom.wrapper.classList.remove( 'overview-deactivating' );
|
||||||
|
@ -1653,7 +1659,7 @@
|
||||||
hbackground = horizontalBackgrounds[i],
|
hbackground = horizontalBackgrounds[i],
|
||||||
hoffset = config.rtl ? -105 : 105;
|
hoffset = config.rtl ? -105 : 105;
|
||||||
|
|
||||||
var htransform = 'translateZ(-'+ depth +'px) translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)';
|
var htransform = 'translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)';
|
||||||
|
|
||||||
hslide.setAttribute( 'data-index-h', i );
|
hslide.setAttribute( 'data-index-h', i );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue