blob: 6affda9ea4bb7af003d08077b08cba3d8a11ffe5 [file] [log] [blame]
/*!
* # Semantic UI - Sidebar
* http://github.com/semantic-org/semantic-ui/
*
*
* Released under the MIT license
* http://opensource.org/licenses/MIT
*
*/
/*******************************
Theme
*******************************/
@type : 'module';
@element : 'sidebar';
@import (multiple) '../../theme.config';
/*******************************
Sidebar
*******************************/
/* Sidebar Menu */
.ui.sidebar {
position: fixed;
top: 0;
left: 0;
backface-visibility: hidden;
transition: none;
will-change: transform;
transform: translate3d(0, 0, 0);
visibility: hidden;
-webkit-overflow-scrolling: touch;
height: 100% !important;
max-height: 100%;
border-radius: 0em !important;
margin: 0em !important;
overflow-y: auto !important;
z-index: @topLayer;
}
/* GPU Layers for Child Elements */
.ui.sidebar > * {
backface-visibility: hidden;
}
/*--------------
Direction
---------------*/
.ui.left.sidebar {
right: auto;
left: 0px;
transform: translate3d(-100%, 0, 0);
}
.ui.right.sidebar {
right: 0px !important;
left: auto !important;
transform: translate3d(100%, 0%, 0);
}
.ui.top.sidebar,
.ui.bottom.sidebar {
width: 100% !important;
height: auto !important;
}
.ui.top.sidebar {
top: 0px !important;
bottom: auto !important;
transform: translate3d(0, -100%, 0);
}
.ui.bottom.sidebar {
top: auto !important;
bottom: 0px !important;
transform: translate3d(0, 100%, 0);
}
/*--------------
Pushable
---------------*/
.pushable {
height: 100%;
overflow-x: hidden;
padding: 0em !important;
}
/* Whole Page */
body.pushable {
background: @canvasBackground !important;
}
/* Page Context */
.pushable:not(body) {
transform: translate3d(0, 0, 0);
}
.pushable:not(body) > .ui.sidebar,
.pushable:not(body) > .fixed,
.pushable:not(body) > .pusher:after {
position: absolute;
}
/*--------------
Fixed
---------------*/
.pushable > .fixed {
position: fixed;
backface-visibility: hidden;
transition: transform @duration @easing;
will-change: transform;
z-index: @fixedLayer;
}
/*--------------
Page
---------------*/
.pushable > .pusher {
position: relative;
backface-visibility: hidden;
overflow: hidden;
min-height: 100%;
transition: transform @duration @easing;
z-index: @middleLayer;
}
body.pushable > .pusher {
background: @pageBackground;
}
/* Pusher should inherit background from context */
.pushable > .pusher {
background: inherit;
}
/*--------------
Dimmer
---------------*/
.pushable > .pusher:after {
position: fixed;
top: 0px;
right: 0px;
content: '';
background-color: @dimmerColor;
overflow: hidden;
opacity: 0;
transition: @dimmerTransition;
will-change: opacity;
z-index: @dimmerLayer;
}
/*--------------
Coupling
---------------*/
.ui.sidebar.menu .item {
border-radius: 0em !important;
}
/*******************************
States
*******************************/
/*--------------
Dimmed
---------------*/
.pushable > .pusher.dimmed:after {
width: 100% !important;
height: 100% !important;
opacity: 1 !important;
}
/*--------------
Animating
---------------*/
.ui.animating.sidebar {
visibility: visible;
}
/*--------------
Visible
---------------*/
.ui.visible.sidebar {
visibility: visible;
transform: translate3d(0, 0, 0);
}
/* Shadow Direction */
.ui.left.visible.sidebar,
.ui.right.visible.sidebar {
box-shadow: @horizontalBoxShadow;
}
.ui.top.visible.sidebar,
.ui.bottom.visible.sidebar {
box-shadow: @verticalBoxShadow;
}
/* Visible On Load */
.ui.visible.left.sidebar ~ .fixed,
.ui.visible.left.sidebar ~ .pusher {
transform: translate3d(@width, 0, 0);
}
.ui.visible.right.sidebar ~ .fixed,
.ui.visible.right.sidebar ~ .pusher {
transform: translate3d(-@width, 0, 0);
}
.ui.visible.top.sidebar ~ .fixed,
.ui.visible.top.sidebar ~ .pusher {
transform: translate3d(0, @height, 0);
}
.ui.visible.bottom.sidebar ~ .fixed,
.ui.visible.bottom.sidebar ~ .pusher {
transform: translate3d(0, -@height, 0);
}
/* opposite sides visible forces content overlay */
.ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .fixed,
.ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher,
.ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .fixed,
.ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher {
transform: translate3d(0, 0, 0);
}
/*--------------
iOS
---------------*/
/*
iOS incorrectly sizes document when content
is presented outside of view with 2Dtranslate
*/
html.ios {
overflow-x: hidden;
-webkit-overflow-scrolling: touch;
}
html.ios,
html.ios body {
height: initial !important;
}
/*******************************
Variations
*******************************/
/*--------------
Width
---------------*/
/* Left / Right */
.ui.thin.left.sidebar,
.ui.thin.right.sidebar {
width: @thinWidth;
}
.ui[class*="very thin"].left.sidebar,
.ui[class*="very thin"].right.sidebar {
width: @veryThinWidth;
}
.ui.left.sidebar,
.ui.right.sidebar {
width: @width;
}
.ui.wide.left.sidebar,
.ui.wide.right.sidebar {
width: @wideWidth;
}
.ui[class*="very wide"].left.sidebar,
.ui[class*="very wide"].right.sidebar {
width: @veryWideWidth;
}
/* Left Visible */
.ui.visible.thin.left.sidebar ~ .fixed,
.ui.visible.thin.left.sidebar ~ .pusher {
transform: translate3d(@thinWidth, 0, 0);
}
.ui.visible[class*="very thin"].left.sidebar ~ .fixed,
.ui.visible[class*="very thin"].left.sidebar ~ .pusher {
transform: translate3d(@veryThinWidth, 0, 0);
}
.ui.visible.wide.left.sidebar ~ .fixed,
.ui.visible.wide.left.sidebar ~ .pusher {
transform: translate3d(@wideWidth, 0, 0);
}
.ui.visible[class*="very wide"].left.sidebar ~ .fixed,
.ui.visible[class*="very wide"].left.sidebar ~ .pusher {
transform: translate3d(@veryWideWidth, 0, 0);
}
/* Right Visible */
.ui.visible.thin.right.sidebar ~ .fixed,
.ui.visible.thin.right.sidebar ~ .pusher {
transform: translate3d(-@thinWidth, 0, 0);
}
.ui.visible[class*="very thin"].right.sidebar ~ .fixed,
.ui.visible[class*="very thin"].right.sidebar ~ .pusher {
transform: translate3d(-@veryThinWidth, 0, 0);
}
.ui.visible.wide.right.sidebar ~ .fixed,
.ui.visible.wide.right.sidebar ~ .pusher {
transform: translate3d(-@wideWidth, 0, 0);
}
.ui.visible[class*="very wide"].right.sidebar ~ .fixed,
.ui.visible[class*="very wide"].right.sidebar ~ .pusher {
transform: translate3d(-@veryWideWidth, 0, 0);
}
/*******************************
Animations
*******************************/
/*--------------
Overlay
---------------*/
/* Set-up */
.ui.overlay.sidebar {
z-index: @topLayer;
}
/* Initial */
.ui.left.overlay.sidebar {
transform: translate3d(-100%, 0%, 0);
}
.ui.right.overlay.sidebar {
transform: translate3d(100%, 0%, 0);
}
.ui.top.overlay.sidebar {
transform: translate3d(0%, -100%, 0);
}
.ui.bottom.overlay.sidebar {
transform: translate3d(0%, 100%, 0);
}
/* Animation */
.animating.ui.overlay.sidebar,
.ui.visible.overlay.sidebar {
transition: transform @duration @easing;
}
/* End - Sidebar */
.ui.visible.left.overlay.sidebar {
transform: translate3d(0%, 0%, 0);
}
.ui.visible.right.overlay.sidebar {
transform: translate3d(0%, 0%, 0);
}
.ui.visible.top.overlay.sidebar {
transform: translate3d(0%, 0%, 0);
}
.ui.visible.bottom.overlay.sidebar {
transform: translate3d(0%, 0%, 0);
}
/* End - Pusher */
.ui.visible.overlay.sidebar ~ .fixed,
.ui.visible.overlay.sidebar ~ .pusher {
transform: none !important;
}
/*--------------
Push
---------------*/
/* Initial */
.ui.push.sidebar {
transition: transform @duration @easing;
z-index: @topLayer;
}
/* Sidebar - Initial */
.ui.left.push.sidebar {
transform: translate3d(-100%, 0, 0);
}
.ui.right.push.sidebar {
transform: translate3d(100%, 0, 0);
}
.ui.top.push.sidebar {
transform: translate3d(0%, -100%, 0);
}
.ui.bottom.push.sidebar {
transform: translate3d(0%, 100%, 0);
}
/* End */
.ui.visible.push.sidebar {
transform: translate3d(0%, 0, 0);
}
/*--------------
Uncover
---------------*/
/* Initial */
.ui.uncover.sidebar {
transform: translate3d(0, 0, 0);
z-index: @bottomLayer;
}
/* End */
.ui.visible.uncover.sidebar {
transform: translate3d(0, 0, 0);
transition: transform @duration @easing;
}
/*--------------
Slide Along
---------------*/
/* Initial */
.ui.slide.along.sidebar {
z-index: @bottomLayer;
}
/* Sidebar - Initial */
.ui.left.slide.along.sidebar {
transform: translate3d(-50%, 0, 0);
}
.ui.right.slide.along.sidebar {
transform: translate3d(50%, 0, 0);
}
.ui.top.slide.along.sidebar {
transform: translate3d(0, -50%, 0);
}
.ui.bottom.slide.along.sidebar {
transform: translate3d(0%, 50%, 0);
}
/* Animation */
.ui.animating.slide.along.sidebar {
transition: transform @duration @easing;
}
/* End */
.ui.visible.slide.along.sidebar {
transform: translate3d(0%, 0, 0);
}
/*--------------
Slide Out
---------------*/
/* Initial */
.ui.slide.out.sidebar {
z-index: @bottomLayer;
}
/* Sidebar - Initial */
.ui.left.slide.out.sidebar {
transform: translate3d(50%, 0, 0);
}
.ui.right.slide.out.sidebar {
transform: translate3d(-50%, 0, 0);
}
.ui.top.slide.out.sidebar {
transform: translate3d(0%, 50%, 0);
}
.ui.bottom.slide.out.sidebar {
transform: translate3d(0%, -50%, 0);
}
/* Animation */
.ui.animating.slide.out.sidebar {
transition: transform @duration @easing;
}
/* End */
.ui.visible.slide.out.sidebar {
transform: translate3d(0%, 0, 0);
}
/*--------------
Scale Down
---------------*/
/* Initial */
.ui.scale.down.sidebar {
transition: transform @duration @easing;
z-index: @topLayer;
}
/* Sidebar - Initial */
.ui.left.scale.down.sidebar {
transform: translate3d(-100%, 0, 0);
}
.ui.right.scale.down.sidebar {
transform: translate3d(100%, 0, 0);
}
.ui.top.scale.down.sidebar {
transform: translate3d(0%, -100%, 0);
}
.ui.bottom.scale.down.sidebar {
transform: translate3d(0%, 100%, 0);
}
/* Pusher - Initial */
.ui.scale.down.left.sidebar ~ .pusher {
transform-origin: 75% 50%;
}
.ui.scale.down.right.sidebar ~ .pusher {
transform-origin: 25% 50%;
}
.ui.scale.down.top.sidebar ~ .pusher {
transform-origin: 50% 75%;
}
.ui.scale.down.bottom.sidebar ~ .pusher {
transform-origin: 50% 25%;
}
/* Animation */
.ui.animating.scale.down > .visible.ui.sidebar {
transition: transform @duration @easing;
}
.ui.visible.scale.down.sidebar ~ .pusher,
.ui.animating.scale.down.sidebar ~ .pusher {
display: block !important;
width: 100%;
height: 100%;
overflow: hidden !important;
}
/* End */
.ui.visible.scale.down.sidebar {
transform: translate3d(0, 0, 0);
}
.ui.visible.scale.down.sidebar ~ .pusher {
transform: scale(0.75);
}
.loadUIOverrides();