Files
robotopro/static/css/less/sidebar.less
Fergal Moran 294a55889c Initial commit
2013-08-29 12:08:44 +01:00

629 lines
10 KiB
Plaintext
Executable File

//some sidebar variables
@sidebar-bg:#F2F2F2;
@sidebar-border-right:#CCC;
//@menu-active-color:#0B6CBC;
@menu-active-color:#2B7DBC;
@menu-bg:#F9F9F9;
@menu-color:#585858;
@menu-focus-color:#1963AA;
@menu-hover-indicator:#3382AF;
@menu-subarrow-color:#666;
@menu-open-bg:#FAFAFA;
@menu-active-bg:#FFF;
@submenu-border:#E5E5E5;
@submenu-bg:#FFF;
@submenu-item-color:#616161;
@submenu-item-border:#E4E4E4;
@submenu-item-hover:#4B88B7;
@submenu-item-active-icon:#C86139;
@submenu-left-border:mix(#BCCFE0 , #7EAACB);
@submenu-active-left-border:mix(mix(#BCCFE0 , #7EAACB) , #7EAACB);
@3rd-level-icon-color:#6A7D87;
@submenu-left-border-style:dotted;
//@submenu-left-border:#CCD7E2;
//@submenu-active-left-border:#BCCFE0;
@menumin-btn-bg:#F3F3F3;
@menumin-btn-border:#E0E0E0;
@menumin-icon-color:#AAA;
@menumin-icon-border:#BBB;
@menumin-icon-bg:#FFF;
@menumin-bg:#F5F5F5;
@menumin-border:#CCC;
@menumin-text-border:#DDD;
@menumin-shadow:~"2px 1px 2px 0 rgba(0,0,0,0.2)";
@shortcuts-bg:#FAFAFA;
@shortcuts-border:#DDD;
.sidebar {
width:@sidebar-width;
position:relative;
float:left;
border-right:1px solid @sidebar-border-right;
background-color:@sidebar-bg;
&:before {/* the grey background of sidebar */
content:""; display:block;
width:@sidebar-width;
position:fixed; bottom:0px; top:0px;
z-index:-1;
background-color:@sidebar-bg;
border-right:1px solid @sidebar-border-right;
}
&.fixed , &.sidebar-fixed {
position:fixed;
z-index:@zindexFixedNavbar - 1;
top:@navbar-mh;
left:0;
&:before {
left:0;
right:auto;
}
}
}
/* side navigation */
li [class^="icon-"], li [class*=" icon-"]{
& , .nav-list & {
width:auto;
}
}
.nav-list {
margin:0; padding:0;
list-style:none;
}
.nav-list > li > a, .nav-list .nav-header {
margin:0;
}
.nav-list > li {
display:block;
padding:0;
margin:0;
border:none;
border-top:1px solid #FCFCFC;
border-bottom:1px solid #E5E5E5;
position:relative;
&:first-child {
border-top:none;
}
}
.nav-list > li {
> a {
display:block;
height:38px; line-height:36px;
padding:0 16px 0 7px;
background-color:@menu-bg;
color:@menu-color;
text-shadow:none !important;
font-size:13px;
text-decoration:none;
> [class*="icon-"]:first-child {
display:inline-block;
vertical-align:middle;
min-width:30px;
text-align:center;
font-size:18px;
font-weight:normal;
}
&:focus {
background-color:@menu-bg;
color:@menu-focus-color;
}
&:hover {
background-color:#FFF;
color:@menu-focus-color;
&:before {
display:block; content:"";
position:absolute;
top:-1px; bottom:0; left:0;
width:3px; max-width:3px; overflow:hidden;
background-color:@menu-hover-indicator;
}
}
}
/* the submenu indicator arrow */
a > .arrow {
display:inline-block;
width:14px !important; height:14px;
line-height:14px;
text-shadow:none;
font-size:18px;
position:absolute;
right:9px; top:11px;
padding:0;
color:@menu-subarrow-color;
}
a:hover > .arrow , &.active > a > .arrow , &.open > a > .arrow {
color:@menu-focus-color;
}
&.separator {
height:3px;
background-color:transparent;
position:static;
margin:1px 0;
.box-shadow(none);
}
/* menu active/open states */
&.open > a {
background-color:@menu-open-bg;
color:@menu-focus-color;
}
&.active {
background-color:@menu-active-bg;
> a
{
& , &:hover, &:focus, &:active {
background-color:@menu-active-bg;
color:@menu-active-color;
font-weight:bold;
font-size:13px;
}
> [class*="icon-"] {
font-weight:normal;
}
&:hover:before {/* no left side menu item border on active state */
display:none;
}
}
//////
&:after {/* the border on right of active item */
display:inline-block; content:"";
position:absolute;
right:-2px; top:-1px; bottom:0;
border-right:2px solid @menu-active-color;
}
}
/* submenu */
&.open {
border-bottom-color:@submenu-border;
}
&.active .submenu {
display:block;
}
.submenu {
display:none;
list-style:none;
margin:0; padding:0;
position:relative;
background-color:@submenu-bg;
border-top:1px solid @submenu-border;
> li {
margin-left:0;
position:relative;
> a {
display:block;
position:relative;
color:@submenu-item-color;
padding:7px 0 8px 37px;
margin:0;
border-top:1px dotted @submenu-item-border;
&:focus {
text-decoration:none;
}
&:hover{
text-decoration:none;
color:@submenu-item-hover;
}
}
&.active > a {
color:@menu-active-color;
}
/* optional icon before each item */
a > [class*="icon-"]:first-child {
display:none;
font-size:12px; font-weight:normal;
width:18px; height:auto; line-height:12px; text-align:center;
position:absolute; left:10px; top:11px; z-index:1;
background-color:#FFF;
}
&.active > a > [class*="icon-"]:first-child,
&:hover > a > [class*="icon-"]:first-child {
display:inline-block;
}
&.active > a > [class*="icon-"]:first-child {
color:@submenu-item-active-icon;
}
}// > li
}//end of submenu
> .submenu {//the first level submenu
> li {
//tree like menu
&:before {
/* the horizontal line */
content:""; display:inline-block;
position:absolute;
width:7px;
left:20px; top:17px;
border-top:1px @submenu-left-border-style @submenu-left-border;
}
&:first-child > a {
border-top:1px solid #FAFAFA;
}
}
&:before {
content:"";
display:block;
position:absolute; z-index:1;
left:18px;
top:0; bottom:0;
border-left:1px @submenu-left-border-style @submenu-left-border;
}
}
&.active {
> .submenu {
> li {
&:before {
border-top-color:@submenu-active-left-border;
}
}
&:before {
border-left-color:@submenu-active-left-border;
}
}
}
}//end of .nav-list > li
//.nav-list li
.nav-list li {
.active_state_caret() {
display:block;
content:"";
position:absolute !important;
right:0; top:4px;
border:8px solid transparent;
border-width:14px 10px;
border-right-color:@menu-active-color;
}
.submenu {
/* needed for webkit based browsers to slideToggle without problem */
overflow:hidden;
}
&.active > a:after {
.active_state_caret();
}
&.open > a:after {/* no caret for open menu item */ //we put this after .active > a:after to override it
display:none;
}
&.active.open > .submenu > li.active.open > a.dropdown-toggle:after {
/* don't display caret on active open item who is open and has children */
display: none;
}
&.active > .submenu > li.active > a:after {
/** don't display caret on active item whose parent is not open
useful for hiding the caret when submenu is sliding up */
display: none;
}
&.active.open > .submenu > li.active > a:after {
/* display caret on active item whose parent is open */
display: block;
}
&.active.no-active-child {
> a:after {/* show caret for active menu item with childs which is not open(i.e. no submenu item is active) */
display:inline-block !important;
}
}
}//end of .nav-list li
.nav-list a {
.badge , .label {
font-size:12px;
padding-left:6px; padding-right:6px;
position:absolute;
top:9px; right:11px;
opacity:0.88;
[class*="icon-"] {
vertical-align:middle;
margin:0;
}
}
&.dropdown-toggle {
.badge , .label {
right:28px;
}
}
&:hover {
.badge , .label {
opacity:1;
}
}
}
.nav-list .submenu .submenu a {
.badge , .label {
top:6px;
}
}
/* side menu minimizer icon */
.sidebar-collapse {
border-bottom:1px solid @menumin-btn-border;
background-color:@menumin-btn-bg;
text-align:center;
padding:3px 0;
position:relative;
> [class*="icon-"]{
display:inline-block;
cursor:pointer;
font-size:14px;
color:@menumin-icon-color;
border:1px solid @menumin-icon-border;
padding:0 5px;
line-height:18px;
border-radius:16px;
background-color:@menumin-icon-bg;
position:relative;
}
&:before {
content:"";
display:inline-block;
height:0;
border-top:1px solid @menumin-btn-border;
position:absolute;
left:15px; right:15px; top:13px;
}
}
/* sidebar shortcuts icon */
.sidebar-shortcuts {
background-color:@shortcuts-bg;
border-bottom:1px solid @shortcuts-border;
text-align:center;
line-height:37px; max-height:40px;
margin-bottom:0;
}
.sidebar-shortcuts-large {
padding-bottom:4px;
> .btn > [class*="icon-"] { font-size:110%; }
}
.sidebar-shortcuts-mini {
display:none;
font-size:0;
width:42px;
line-height:18px;
padding-top:2px; padding-bottom:2px;
background-color:@submenu-bg;
> .btn{
border-width:0 !important;
font-size:0;
line-height:0;
padding:8px !important;
margin:0 1px;
border-radius:0 !important;
.opacity(85);
}
}
//3rd & 4th level menu
.nav-list > li > .submenu {
li > .submenu {
border-top:none;
background-color:transparent;
display:none;
}
li.active > .submenu {
display:block;
}
a > .arrow {
right:11px; top:10px;
font-size:16px;
color:#6B828E;
}
li > .submenu > li > a > .arrow {
right:12px;
top:9px;
}
li > .submenu > li {
line-height:16px;
&:before {//the tree like menu
display:none;
}
> a {/*3rd level*/
margin-left:20px;
padding-left:22px;
}
> .submenu > li > a {/*4th level*/
margin-left:20px;
padding-left:38px;
}
a > [class*="icon-"]:first-child {
display:inline-block;
color:inherit;
font-size:14px;
position:static;
background-color:transparent;
}
a {
font-size:13px;
color:#777;
&:hover {
color:desaturate(@menu-focus-color, 25%);
text-decoration:underline;
[class*="icon-"] {
text-decoration:none;
color:desaturate(@menu-focus-color, 25%);
}
}
}
}
li.open > a {
color:desaturate(@menu-focus-color, 12%);
> [class*="icon-"]:first-child {
display:inline-block;
}
.arrow {
color:desaturate(@menu-focus-color, 12%);
}
}
li > .submenu li.open > a {
color:desaturate(@menu-focus-color, 12%);
> [class*="icon-"]:first-child {
display:inline-block;
color:@menu-focus-color;
}
.arrow {
color:desaturate(@menu-focus-color, 12%);
}
}
li > .submenu li.active > a {
color:desaturate(@menu-active-color, 8%);
> [class*="icon-"]:first-child {
display:inline-block;
color:desaturate(@menu-active-color, 8%);
}
}
}//.nav-list > li > .submenu
.nav-list > li {
&.active.open li.active > a:after {
top:2px;
border-width:14px 8px;
}
&.active.open li.active.open li.active > a:after {
top:0;
}
}
@import "sidebar-min.less";//minimized sidebar mode
/* side menu toggler in mobile view */
.menu-toggler {
display:none;
}