/* * # Semantic - Sidebar * http://github.com/semantic-org/semantic-ui/ * * * Copyright 2014 Contributors * Released under the MIT license * http://opensource.org/licenses/MIT * */ /******************************* Theme *******************************/ @type : 'module'; @element : 'sidebar'; @import '../../semantic.config'; /******************************* Sidebar *******************************/ /* Sidebar Menu */ .ui.sidebar { position: fixed; top: 0; left: 0; visibility: hidden; background: @sidebarBackground; backface-visibility: hidden; height: 100% !important; width: @sidebarWidth !important; border-radius: 0em !important; margin: 0 !important; transition: none; will-change: transform; overflow-y: auto !important; backface-visibility: hidden; } /*-------------- Body ---------------*/ /* Sets 3D Perspective */ .pushable { background: @canvasBackground !important; position: relative; height: 100%; overflow-x: hidden; } /*-------------- Pusher ---------------*/ .pushable > .pusher { background: @canvasBackground; height: 100%; z-index: 1002; transition: transform @duration @easing; } /*-------------- Page ---------------*/ .pushable > .pusher > .page { position: relative; min-height: 100%; background: @bodyBackground; } /*-------------- Dimmer ---------------*/ .pushable > .pusher > .page:after { position: absolute; top: 0px; right: 0px; content: ''; background-color: @dimmerColor; width: 0px; height: 0px; overflow: hidden; opacity: 0; z-index: @dimmerLayer; transition: opacity @duration; will-change: opacity; } /******************************* States *******************************/ /*-------------- Pushed ---------------*/ .pushable.pushed { overflow-x: hidden; } /* Show Dimmer */ .pushable.pushed > .pusher > .page:after { width: 100% !important; height: 100% !important; opacity: 1 !important; } .pushable.pushed > .pusher { backface-visibility: hidden; -webkit-overflow-scrolling: touch; } .pushable.active > .visible.sidebar { -webkit-overflow-scrolling: touch; backface-visibility: hidden; z-index: 9999; } /*-------------- Animation ---------------*/ .pushable.show > .pusher, .pushable.hide > .pusher { backface-visibility: hidden; } .pushable.show > .visible.sidebar, .pushable.hide > .visible.sidebar { backface-visibility: hidden; } /*.pushable.hide > .pusher > .page *, .pushable.show > .pusher > .page *, .pushable.pushed > .pusher > .page * { transition: none !important; }*/ /*-------------- Visible ---------------*/ .pushable > .visible.ui.sidebar { visibility: visible; } /******************************* Variations *******************************/ /*-------------- Styled ---------------*/ .ui.styled.sidebar { background-color: #FFFFFF; padding: 1em 1.25em; border-right: 1px solid #DDDDDD; } /******************************* Animations *******************************/ /*-------------- Overlay ---------------*/ /* Set-up */ .pushable.overlay > .visible.ui.sidebar { transform: translate3d(-100%, 0, 0); z-index: @topLayer; } /* Pushed */ .pushable.overlay.pushed .visible.ui.sidebar { transform: translate3d(0%, 0, 0); } /* Animation */ .pushable.overlay.show > .visible.ui.sidebar, .pushable.overlay.hide > .visible.ui.sidebar { transition: transform @duration @easing; } /*-------------- Push ---------------*/ /* Set-Up */ .pushable.push > .pusher { transform: translate3d(0px, 0, 0); } .pushable.push > .visible.ui.sidebar { transform: translate3d(-100%, 0, 0); } /* Pushed */ .pushable.push.pushed > .visible.ui.sidebar { transform: translate3d(0%, 0, 0); } .pushable.push.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } .pushable.push.show > .visible.ui.sidebar, .pushable.push.hide > .visible.ui.sidebar { transition: transform @duration @easing; } /*-------------- Safe Mode ---------------*/ /* Set-Up */ .pushable.safe > .pusher { position: relative; transform: none !important; transition: none !important; } .pushable.safe > .pusher { transform: none !important; transition: none !important; } /* Pushed */ .pushable.safe.pushed { margin-left: @sidebarWidth !important; } .pushable.safe.show, .pushable.safe.hide { transition: margin @duration @easing !important; } /*-------------- Reveal ---------------*/ /* Set-up */ .pushable.reveal > .pusher { transform: translate3d(0px, 0, 0); z-index: @bottomLayer; } .pushable.reveal > .visible.ui.sidebar { transition: none; } /* Pushed */ .pushable.reveal.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } /*-------------- Slide Along ---------------*/ /* Set-up */ .pushable.slide.along > .pusher { transform: translate3d(0px, 0, 0); z-index: @bottomLayer; } .pushable.slide.along > .visible.ui.sidebar { transform: translate3d(-50%, 0, 0); } /* Pushed */ .pushable.slide.along.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } .pushable.slide.along.pushed > .visible.ui.sidebar { transform: translate3d(0%, 0, 0); } .pushable.slide.along.show > .visible.ui.sidebar, .pushable.slide.along.hide > .visible.ui.sidebar { transition: transform @duration @easing; } /*-------------- Slide Out ---------------*/ /* Set-up */ .pushable.slide.out > .pusher { transform: translate3d(0px, 0, 0); } .pushable.slide.out > .visible.ui.sidebar { transform: translate3d(50%, 0, 0); } /* Pushed */ .pushable.slide.out.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } .pushable.slide.out.pushed .visible.ui.sidebar { transform: translate3d(0%, 0, 0); } .pushable.slide.out.show > .visible.ui.sidebar, .pushable.slide.out.hide > .visible.ui.sidebar { transition: transform @duration @easing; } /*-------------- Scale Down ---------------*/ /* Set-up */ .pushable.scale.down > .pusher { z-index: @bottomLayer; transform-origin: 75% 50%; overflow: hidden; } .pushable.scale.down > .visible.ui.sidebar { transform: translate3d(-100%, 0, 0); z-index: @topLayer; } /* Pushed */ .pushable.scale.down.pushed > .pusher { transform: scale(0.75); } .pushable.scale.down.pushed > .visible.ui.sidebar { transform: translate3d(0, 0, 0); } /* 3D transition cant have duration set until animation */ .pushable.scale.down.show > .visible.ui.sidebar, .pushable.scale.down.hide > .visible.ui.sidebar { transition: transform @duration @easing; } /*-------------- Scale Up ---------------*/ /* Set-up */ .pushable.scale.up { perspective: @perspective; perspective-origin: 0% 50%; } .pushable.scale.up > .ui.sidebar { transform: translate3d(0, 0, -@sidebarWidth); } /* Pushed */ .pushable.scale.up.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } .pushable.scale.up.pushed > .visible.ui.sidebar { transform: translate3d(0, 0, 0); } /* Animation */ .pushable.scale.up.show > .ui.sidebar, .pushable.scale.up.hide > .ui.sidebar { transition: transform @duration @easing; } /*-------------- Open Door ---------------*/ /* Set-up */ .pushable.open.door { perspective: @perspective; } .pushable.open.door > .ui.sidebar { opacity: 1; transform: translate3d(-100%, 0, 0); z-index: @topLayer; } .pushable.open.door > .pusher { transform-origin: 100% 50%; transform: rotateY(0deg); } /* Pushed */ .pushable.open.door.pushed > .pusher { transform: rotateY(-10deg); } .pushable.open.door.pushed > .visible.ui.sidebar { transform: translate3d(0, 0, 0); } /* Animation */ .pushable.open.door.show > .ui.sidebar, .pushable.open.door.hide > .ui.sidebar { transition: transform @duration; } /*-------------- Rotate In ---------------*/ /* Set-up */ .pushable.rotate.in { perspective: @perspective; perspective-origin: 0% 50%; } .pushable.rotate.in > .pusher { perspective: none; } .pushable.rotate.in > .ui.sidebar { transform: translate3d(-100%, 0, 0) rotateY(90deg); transform-origin: 50% 100% 0; transform-style: preserve-3d; } /* Pushed */ .pushable.rotate.in.pushed > .pusher { transform: translate3d(@sidebarWidth, 0, 0); } .pushable.rotate.in.pushed .visible.ui.sidebar { transform: translate3d(0%, 0, 0) rotateY(0deg); } /* Return Animation */ .pushable.rotate.in.hide > .visible.ui.sidebar { transform: translate3d(-100%, 0, 0) rotateY(0deg); transition: transform @duration ease 0s; } /* Animation */ .pushable.rotate.in.show > .ui.sidebar, .pushable.rotate.in.hide > .ui.sidebar { transition: transform @duration ease-in-out 0s; }