com.phloxui
Version:
PhloxUI Ng2+ Framework
219 lines (180 loc) • 4.88 kB
text/less
// Mixins lib for rounded corner style
@import "../variables";
@import "../bootstrap/variables";
.phlox-side-nav(@width: @DEFAULT_SIDE_NAV_WIDTH, @duration: @DEFAULT_SIDE_NAV_TRANSITION_DURATION, @tFunc: @DEFAULT_SIDE_NAV_TRANSITION_TIMING_FUNCTION, @bg: @DEFAULT_SIDE_NAV_BG, @zIdx: @DEFAULT_SIDE_NAV_Z_INDEX) {
.phlox-side-nav-default-open(@width, @duration, @tFunc, @bg, @zIdx);
}
.phlox-side-nav {
.phlox-side-nav();
}
.phlox-side-nav-default-open(@width: @DEFAULT_SIDE_NAV_WIDTH, @duration: @DEFAULT_SIDE_NAV_TRANSITION_DURATION, @tFunc: @DEFAULT_SIDE_NAV_TRANSITION_TIMING_FUNCTION, @bg: @DEFAULT_SIDE_NAV_BG, @zIdx: @DEFAULT_SIDE_NAV_Z_INDEX) {
// Root wrapper (both "sidebar" & "content")
&-wrapper {
padding-left: 0;
-webkit-transition: all @duration e(@tFunc);
-moz-transition: all @duration e(@tFunc);
-o-transition: all @duration e(@tFunc);
transition: all @duration e(@tFunc);
}
&-wrapper.toggled {
padding-left: @width;
}
&-wrapper.fixed.toggled {
padding-left: 0;
}
// Sidebar
&-wrapper > .sidebar-wrapper {
z-index: @zIdx;
position: fixed;
left: @width;
width: 0;
height: 100%;
margin-left: -@width;
overflow-y: auto;
-webkit-transition: all @duration e(@tFunc);
-moz-transition: all @duration e(@tFunc);
-o-transition: all @duration e(@tFunc);
transition: all @duration e(@tFunc);
background: @bg;
}
&-wrapper.slide > .sidebar-wrapper {
width: @width;
margin-left: -(2 * @width);
}
&-wrapper.slide.toggled > .sidebar-wrapper {
margin-left: -@width;
}
&-wrapper.toggled > .sidebar-wrapper {
width: @width;
}
&-wrapper > .sidebar-wrapper > * {
position: absolute;
top: 0;
width: @width;
margin: 0;
padding: 0;
}
// Content
&-wrapper > .content-wrapper {
width: 100%;
position: absolute;
background: @bg;
}
&-wrapper.toggled > .content-wrapper {
position: absolute;
margin-right: -@width;
}
&-wrapper.fixed.toggled > .content-wrapper {
margin-right: 0;
}
@media(min-width: @screen-sm) {
&-wrapper {
padding-left: @width;
}
&-wrapper.fixed {
padding-left: 0;
}
&-wrapper.toggled {
padding-left: 0;
}
&-wrapper > .sidebar-wrapper {
width: @width;
}
&-wrapper.toggled > .sidebar-wrapper {
width: 0;
}
&-wrapper.slide.toggled > .sidebar-wrapper {
width: @width;
}
&-wrapper > .content-wrapper {
position: relative;
}
&-wrapper.toggled > .content-wrapper {
position: relative;
margin-right: 0;
}
&-wrapper.slide > .sidebar-wrapper {
width: @width;
margin-left: -@width;
}
&-wrapper.slide.toggled > .sidebar-wrapper {
margin-left: -(2 * @width);
}
}
}
.phlox-side-nav-default-open {
.phlox-side-nav-default-open();
}
.phlox-side-nav-default-close(@width: @DEFAULT_SIDE_NAV_WIDTH, @duration: @DEFAULT_SIDE_NAV_TRANSITION_DURATION, @tFunc: @DEFAULT_SIDE_NAV_TRANSITION_TIMING_FUNCTION, @bg: @DEFAULT_SIDE_NAV_BG, @zIdx: @DEFAULT_SIDE_NAV_Z_INDEX) {
// Root wrapper (both "sidebar" & "content")
&-wrapper {
padding-left: 0;
-webkit-transition: all @duration e(@tFunc);
-moz-transition: all @duration e(@tFunc);
-o-transition: all @duration e(@tFunc);
transition: all @duration e(@tFunc);
}
&-wrapper.toggled {
padding-left: @width;
}
&-wrapper.fixed.toggled {
padding-left: 0;
}
// Sidebar
&-wrapper > .sidebar-wrapper {
z-index: @zIdx;
position: fixed;
left: @width;
width: 0;
height: 100%;
margin-left: -@width;
overflow-y: auto;
-webkit-transition: all @duration e(@tFunc);
-moz-transition: all @duration e(@tFunc);
-o-transition: all @duration e(@tFunc);
transition: all @duration e(@tFunc);
background: @bg;
}
&-wrapper.slide > .sidebar-wrapper {
width: @width;
margin-left: -(2 * @width);
}
&-wrapper.toggled > .sidebar-wrapper {
width: @width;
}
&-wrapper.slide.toggled > .sidebar-wrapper {
margin-left: -@width;
}
&-wrapper > .sidebar-wrapper > * {
position: absolute;
top: 0;
width: @width;
margin: 0;
padding: 0;
}
// Content
&-wrapper > .content-wrapper {
width: 100%;
position: absolute;
background: @bg;
}
&-wrapper.toggled > .content-wrapper {
position: absolute;
margin-right: 0;
}
@media(min-width: @screen-sm) {
&-wrapper > .content-wrapper {
position: relative;
}
&-wrapper.toggled > .content-wrapper {
position: relative;
margin-right: -@width;
}
&-wrapper.fixed.toggled > .content-wrapper {
margin-right: 0;
}
}
}
.phlox-side-nav-default-close {
.phlox-side-nav-default-close();
}