From 5a774ef6f3b38b19b26913a34b1388530c72334e Mon Sep 17 00:00:00 2001 From: Christian Franke Date: Tue, 9 Apr 2013 14:31:22 +0200 Subject: Initial Commit --- deck.js/themes/transition/fade.css | 43 +++++++++ deck.js/themes/transition/fade.scss | 69 +++++++++++++++ deck.js/themes/transition/horizontal-slide.css | 76 ++++++++++++++++ deck.js/themes/transition/horizontal-slide.scss | 90 +++++++++++++++++++ deck.js/themes/transition/vertical-slide.css | 94 ++++++++++++++++++++ deck.js/themes/transition/vertical-slide.scss | 112 ++++++++++++++++++++++++ 6 files changed, 484 insertions(+) create mode 100644 deck.js/themes/transition/fade.css create mode 100644 deck.js/themes/transition/fade.scss create mode 100644 deck.js/themes/transition/horizontal-slide.css create mode 100644 deck.js/themes/transition/horizontal-slide.scss create mode 100644 deck.js/themes/transition/vertical-slide.css create mode 100644 deck.js/themes/transition/vertical-slide.scss (limited to 'deck.js/themes/transition') diff --git a/deck.js/themes/transition/fade.css b/deck.js/themes/transition/fade.css new file mode 100644 index 0000000..3c3fa2d --- /dev/null +++ b/deck.js/themes/transition/fade.css @@ -0,0 +1,43 @@ +.csstransitions.csstransforms .deck-container .slide { + -webkit-transition: opacity 500ms ease-in-out 0ms; + -moz-transition: opacity 500ms ease-in-out 0ms; + -ms-transition: opacity 500ms ease-in-out 0ms; + -o-transition: opacity 500ms ease-in-out 0ms; + transition: opacity 500ms ease-in-out 0ms; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide { + position: absolute; + top: 0; + left: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + padding: 0 48px; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .slide { + position: relative; + left: 0; + top: 0; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-next, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-after { + opacity: 0; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-current { + opacity: 1; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-next, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-after { + opacity: 0; + pointer-events: none; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before .slide, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous .slide { + visibility: visible; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-child-current { + opacity: 1; + visibility: visible; + pointer-events: auto; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-child-current .deck-next, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-child-current .deck-after { + visibility: hidden; +} diff --git a/deck.js/themes/transition/fade.scss b/deck.js/themes/transition/fade.scss new file mode 100644 index 0000000..7612629 --- /dev/null +++ b/deck.js/themes/transition/fade.scss @@ -0,0 +1,69 @@ +@mixin translate($x: 0, $y: 0, $z: 0) { + -webkit-transform:translate3d($x, $y, $z); + -moz-transform:translate($x, $y); + -ms-transform:translate($x, $y); + -o-transform:translate($x, $y); + transform:translate3d($x, $y, $z); +} + +@mixin transition($prop, $duration, $easing: ease-in-out, $delay: 0ms) { + -webkit-transition:$prop $duration $easing $delay; + -moz-transition:$prop $duration $easing $delay; + -ms-transition:$prop $duration $easing $delay; + -o-transition:$prop $duration $easing $delay; + transition:$prop $duration $easing $delay; +} + +.csstransitions.csstransforms { + .deck-container .slide { + @include transition(opacity, 500ms); + } + + .deck-container:not(.deck-menu) { + > .slide { + position:absolute; + top:0; + left:0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width:100%; + padding:0 48px; + + .slide { + position:relative; + left:0; + top:0; + } + + .deck-next, .deck-after { + opacity:0; + } + + .deck-current { + opacity:1; + } + } + + > .deck-previous, > .deck-before, > .deck-next, > .deck-after { + opacity:0; + pointer-events:none; + } + + > .deck-before, > .deck-previous { + .slide { + visibility:visible; + } + } + + > .deck-child-current { + opacity:1; + visibility:visible; + pointer-events:auto; + + .deck-next, .deck-after { + visibility:hidden; + } + } + } +} diff --git a/deck.js/themes/transition/horizontal-slide.css b/deck.js/themes/transition/horizontal-slide.css new file mode 100644 index 0000000..4a4c6ad --- /dev/null +++ b/deck.js/themes/transition/horizontal-slide.css @@ -0,0 +1,76 @@ +.csstransitions.csstransforms { + overflow-x: hidden; +} +.csstransitions.csstransforms .deck-container > .slide { + -webkit-transition: -webkit-transform 500ms ease-in-out; + -moz-transition: -moz-transform 500ms ease-in-out; + -ms-transition: -ms-transform 500ms ease-in-out; + -o-transition: -o-transform 500ms ease-in-out; + transition: transform 500ms ease-in-out; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide { + position: absolute; + top: 0; + left: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + padding: 0 48px; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .slide { + position: relative; + left: 0; + top: 0; + -webkit-transition: -webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -moz-transition: -moz-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -ms-transition: -ms-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -o-transition: -o-transform 500ms ease-in-out, opacity 500ms ease-in-out; + transition: -webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-next, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-after { + visibility: visible; + -webkit-transform: translate3d(200%, 0, 0); + -moz-transform: translate(200%, 0); + -ms-transform: translate(200%, 0); + -o-transform: translate(200%, 0); + transform: translate3d(200%, 0, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous { + -webkit-transform: translate3d(-200%, 0, 0); + -moz-transform: translate(-200%, 0); + -ms-transform: translate(-200%, 0); + -o-transform: translate(-200%, 0); + transform: translate3d(-200%, 0, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before { + -webkit-transform: translate3d(-400%, 0, 0); + -moz-transform: translate(-400%, 0); + -ms-transform: translate(-400%, 0); + -o-transform: translate(-400%, 0); + transform: translate3d(-400%, 0, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-next { + -webkit-transform: translate3d(200%, 0, 0); + -moz-transform: translate(200%, 0); + -ms-transform: translate(200%, 0); + -o-transform: translate(200%, 0); + transform: translate3d(200%, 0, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-after { + -webkit-transform: translate3d(400%, 0, 0); + -moz-transform: translate(400%, 0); + -ms-transform: translate(400%, 0); + -o-transform: translate(400%, 0); + transform: translate3d(400%, 0, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before .slide, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous .slide { + visibility: visible; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-child-current { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + -o-transform: none; + transform: none; +} diff --git a/deck.js/themes/transition/horizontal-slide.scss b/deck.js/themes/transition/horizontal-slide.scss new file mode 100644 index 0000000..c260bbc --- /dev/null +++ b/deck.js/themes/transition/horizontal-slide.scss @@ -0,0 +1,90 @@ +@mixin translate($x: 0, $y: 0, $z: 0) { + -webkit-transform:translate3d($x, $y, $z); + -moz-transform:translate($x, $y); + -ms-transform:translate($x, $y); + -o-transform:translate($x, $y); + transform:translate3d($x, $y, $z); +} + +@mixin transition($prop, $duration, $easing: ease-in-out, $delay: 0ms) { + -webkit-transition:$prop $duration $easing $delay; + -moz-transition:$prop $duration $easing $delay; + -ms-transition:$prop $duration $easing $delay; + -o-transition:$prop $duration $easing $delay; + transition:$prop $duration $easing $delay; +} + +@mixin transform($val) { + -webkit-transform:$val; + -moz-transform:$val; + -ms-transform:$val; + -o-transform:$val; + transform:$val; +} + +.csstransitions.csstransforms { + overflow-x:hidden; + + .deck-container > .slide { + -webkit-transition:-webkit-transform 500ms ease-in-out; + -moz-transition:-moz-transform 500ms ease-in-out; + -ms-transition:-ms-transform 500ms ease-in-out; + -o-transition:-o-transform 500ms ease-in-out; + transition:transform 500ms ease-in-out; + } + + .deck-container:not(.deck-menu) { + > .slide { + position:absolute; + top:0; + left:0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width:100%; + padding:0 48px; + + .slide { + position:relative; + left:0; + top:0; + -webkit-transition:-webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -moz-transition:-moz-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -ms-transition:-ms-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -o-transition:-o-transform 500ms ease-in-out, opacity 500ms ease-in-out; + transition:-webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + } + + .deck-next, .deck-after { + visibility:visible; + @include translate(200%); + } + } + + > .deck-previous { + @include translate(-200%); + } + + > .deck-before { + @include translate(-400%); + } + + > .deck-next { + @include translate(200%); + } + + > .deck-after { + @include translate(400%); + } + + > .deck-before, > .deck-previous { + .slide { + visibility:visible; + } + } + + > .deck-child-current { + @include transform(none); + } + } +} \ No newline at end of file diff --git a/deck.js/themes/transition/vertical-slide.css b/deck.js/themes/transition/vertical-slide.css new file mode 100644 index 0000000..7f87092 --- /dev/null +++ b/deck.js/themes/transition/vertical-slide.css @@ -0,0 +1,94 @@ +.csstransitions.csstransforms .deck-container { + overflow-y: hidden; +} +.csstransitions.csstransforms .deck-container > .slide { + -webkit-transition: -webkit-transform 500ms ease-in-out; + -moz-transition: -moz-transform 500ms ease-in-out; + -ms-transition: -ms-transform 500ms ease-in-out; + -o-transition: -o-transform 500ms ease-in-out; + transition: transform 500ms ease-in-out; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide { + position: absolute; + top: 0; + left: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + padding: 0 48px; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .slide { + position: relative; + left: 0; + top: 0; + -webkit-transition: -webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -moz-transition: -moz-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -ms-transition: -ms-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -o-transition: -o-transform 500ms ease-in-out, opacity 500ms ease-in-out; + transition: -webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-next, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .slide .deck-after { + visibility: visible; + -webkit-transform: translate3d(0, 1600px, 0); + -moz-transform: translate(0, 1600px); + -ms-transform: translate(0, 1600px); + -o-transform: translate(0, 1600px); + transform: translate3d(0, 1600px, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous { + -webkit-transform: translate3d(0, -200%, 0); + -moz-transform: translate(0, -200%); + -ms-transform: translate(0, -200%); + -o-transform: translate(0, -200%); + transform: translate3d(0, -200%, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before { + -webkit-transform: translate3d(0, -400%, 0); + -moz-transform: translate(0, -400%); + -ms-transform: translate(0, -400%); + -o-transform: translate(0, -400%); + transform: translate3d(0, -400%, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-next { + -webkit-transform: translate3d(0, 200%, 0); + -moz-transform: translate(0, 200%); + -ms-transform: translate(0, 200%); + -o-transform: translate(0, 200%); + transform: translate3d(0, 200%, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-after { + -webkit-transform: translate3d(0, 400%, 0); + -moz-transform: translate(0, 400%); + -ms-transform: translate(0, 400%); + -o-transform: translate(0, 400%); + transform: translate3d(0, 400%, 0); +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-before .slide, .csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-previous .slide { + visibility: visible; +} +.csstransitions.csstransforms .deck-container:not(.deck-menu) > .deck-child-current { + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + -o-transform: none; + transform: none; +} +.csstransitions.csstransforms .deck-prev-link { + left: auto; + right: 8px; + top: 59px; + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); +} +.csstransitions.csstransforms .deck-next-link { + top: 99px; + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); +} diff --git a/deck.js/themes/transition/vertical-slide.scss b/deck.js/themes/transition/vertical-slide.scss new file mode 100644 index 0000000..c6892c3 --- /dev/null +++ b/deck.js/themes/transition/vertical-slide.scss @@ -0,0 +1,112 @@ +@mixin translate($x: 0, $y: 0, $z: 0) { + -webkit-transform:translate3d($x, $y, $z); + -moz-transform:translate($x, $y); + -ms-transform:translate($x, $y); + -o-transform:translate($x, $y); + transform:translate3d($x, $y, $z); +} + +@mixin rotate($deg) { + -webkit-transform:rotate($deg); + -moz-transform:rotate($deg); + -ms-transform:rotate($deg); + -o-transform:rotate($deg); + transform:rotate($deg); +} + +@mixin transition($prop, $duration, $easing: ease-in-out, $delay: 0ms) { + -webkit-transition:$prop $duration $easing $delay; + -moz-transition:$prop $duration $easing $delay; + -ms-transition:$prop $duration $easing $delay; + -o-transition:$prop $duration $easing $delay; + transition:$prop $duration $easing $delay; +} + +@mixin transform($val) { + -webkit-transform:$val; + -moz-transform:$val; + -ms-transform:$val; + -o-transform:$val; + transform:$val; +} + +.csstransitions.csstransforms { + .deck-container { + overflow-y:hidden; + + > .slide { + -webkit-transition:-webkit-transform 500ms ease-in-out; + -moz-transition:-moz-transform 500ms ease-in-out; + -ms-transition:-ms-transform 500ms ease-in-out; + -o-transition:-o-transform 500ms ease-in-out; + transition:transform 500ms ease-in-out; + } + } + + .deck-container:not(.deck-menu) { + > .slide { + position:absolute; + top:0; + left:0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width:100%; + padding:0 48px; + + .slide { + position:relative; + left:0; + top:0; + -webkit-transition:-webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -moz-transition:-moz-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -ms-transition:-ms-transform 500ms ease-in-out, opacity 500ms ease-in-out; + -o-transition:-o-transform 500ms ease-in-out, opacity 500ms ease-in-out; + transition:-webkit-transform 500ms ease-in-out, opacity 500ms ease-in-out; + } + + .deck-next, .deck-after { + visibility:visible; + @include translate(0, 1600px); + } + } + + > .deck-previous { + @include translate(0, -200%); + } + + > .deck-before { + @include translate(0, -400%); + } + + > .deck-next { + @include translate(0, 200%); + } + + > .deck-after { + @include translate(0, 400%); + } + + > .deck-before, > .deck-previous { + .slide { + visibility:visible; + } + } + + > .deck-child-current { + @include transform(none); + } + } + + .deck-prev-link { + left:auto; + right:8px; + top:59px; + @include rotate(90deg); + } + + .deck-next-link { + top:99px; + @include rotate(90deg); + } +} \ No newline at end of file -- cgit v1.2.1