AdminLTE/build/scss/_mixins.scss
Abdullah Almsaeed 545a862c1d Dev setup
2016-01-16 11:27:23 -05:00

271 lines
6.1 KiB
SCSS

// AdminLTE mixins
// ===============
// Changes the color and the hovering properties of the navbar
@mixin navbar-variant($color, $font-color: rgba(255, 255, 255, 0.8), $hover-color: #f6f6f6, $hover-bg: rgba(0, 0, 0, 0.1)) {
background-color: $color;
// Navbar links
.nav > li > a {
color: $font-color;
}
.nav > li > a:hover,
.nav > li > a:active,
.nav > li > a:focus,
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus,
.nav > .active > a {
background: $hover-bg;
color: $hover-color;
}
// Add color to the sidebar toggle button
.sidebar-toggle {
color: $font-color;
&:hover {
color: $hover-color;
background: $hover-bg;
}
}
}
// Logo color variation
@mixin logo-variant($bg-color, $color: #fff, $border-bottom-color: transparent, $border-bottom-width: 0) {
background-color: $bg-color;
color: $color;
border-bottom: $border-bottom-width solid $border-bottom-color;
&:hover {
background-color: darken($bg-color, 1%);
}
}
// Box solid color variantion creator
@mixin box-solid-variant($color, $text-color: #fff) {
border: 1px solid $color;
> .box-header {
color: $text-color;
background: $color;
background-color: $color;
a,
.btn {
color: $text-color;
}
}
}
// Direct Chat Variant
@mixin direct-chat-variant($bg-color, $color: #fff) {
.right > .direct-chat-text {
background: $bg-color;
border-color: $bg-color;
color: $color;
&:after,
&:before {
border-left-color: $bg-color;
}
}
}
// border radius creator
@mixin border-radius($radius) {
border-radius: $radius;
}
@mixin translate($x, $y) {
-webkit-transform: translate($x, $y);
-ms-transform: translate($x, $y); // IE9 only
transform: translate($x, $y);
}
// Different radius each side
@mixin border-radius-sides($top-left, $top-right, $bottom-left, $bottom-right)
{
border-radius: $top-left $top-right $bottom-left $bottom-right;
}
@mixin calc($property, $expression) {
#{$property}: -webkit-calc(#{$expression});
#{$property}: calc(#{$expression});
}
@mixin rotate($value) {
-ms-transform: rotate($value);
transform: rotate($value);
}
@mixin animation($animation) {
animation: $animation;
}
// Gradient background
@mixin gradient($color: #F5F5F5, $start: #EEE, $stop: #FFF) {
background: $color;
background: -webkit-gradient(linear, left bottom, left top, color-stop(0, $start), color-stop(1, $stop));
background: -ms-linear-gradient(bottom, $start, $stop);
background: -moz-linear-gradient(center bottom, $start 0%, $stop 100%);
background: -o-linear-gradient($stop, $start);
}
// Skins Mixins
// Dark Sidebar Mixin
@mixin skin-dark-sidebar($link-hover-border-color) {
// Sidebar background color (Both .wrapper and .left-side are responsible for sidebar bg color)
.main-sidebar,
.main-sidebar:before {
background-color: $sidebar-dark-bg;
}
// User Panel (resides in the sidebar)
.user-panel {
> .info, > .info > a {
color: #fff;
}
}
// Sidebar Menu. First level links
.nav-sidebar > .nav-item {
// links
> .nav-link {
border-left: 3px solid transparent;
&:active,
&:focus {
color: $sidebar-dark-color;
}
}
// Hover and active states
&:hover > .nav-link,
&.active > .nav-link {
color: $sidebar-dark-hover-color;
background: $sidebar-dark-hover-bg;
border-left-color: $link-hover-border-color;
}
// First Level Submenu
> .nav-treeview {
margin: 0 1px;
background: $sidebar-dark-submenu-bg;
}
}
// Section Headning
.nav-header {
color: darken($sidebar-dark-color, 20%);
background: inherit;//darken($sidebar-dark-bg, 3%);
}
// All links within the sidebar menu
.sidebar a {
color: $sidebar-dark-color;
&:hover {
text-decoration: none;
}
}
// All submenus
.nav-treeview {
> .nav-item {
> .nav-link {
color: $sidebar-dark-submenu-color;
}
&.active > .nav-link,
> .navlink:hover {
color: $sidebar-dark-submenu-hover-color;
}
}
}
// Sidebar form
.sidebar-form {
.form-control {
background: $sidebar-dark-hover-bg;
border: 0;
color: $sidebar-dark-hover-color;
padding: 10px 10px;
&:focus {
background: lighten($sidebar-dark-bg, 3%);
}
}
}
}
// Light Sidebar Mixin
@mixin skin-light-sidebar($icon-active-color) {
// Sidebar background color
.main-sidebar,
.main-sidebar:before {
background-color: $sidebar-light-bg;
}
.content-wrapper,
.main-footer {
border-left: 1px solid $gray;
}
// User Panel (resides in the sidebar)
.user-panel {
> .info,
> .info > .nav-link {
color: $sidebar-light-color;
}
}
// Sidebar Menu. First level links
.sidebar-menu > .nav-item {
transition: border-left-color .3s ease;
// links
> .nav-link {
border-left: 3px solid transparent;
font-weight: 600;
&:focus {
color: $sidebar-light-color;
}
}
// Hover and active states
&:hover > .nav-link,
&.active > .nav-link {
color: $sidebar-light-hover-color;
background: $sidebar-light-hover-bg;
}
&:hover > .nav-link {
}
&.active {
border-left-color: $icon-active-color;
> .nav-link {
font-weight: 600;
}
}
// First Level Submenu
> .nav-treeview {
background: $sidebar-light-submenu-bg;
}
}
// Section Headning
.nav-header {
color: lighten($sidebar-light-color, 25%);
background: $sidebar-light-bg;
}
// All links within the sidebar menu
.sidebar .nav-link {
color: $sidebar-light-color;
&:hover {
text-decoration: none;
}
}
// All submenus
.nav-treeview {
> .nav-item {
> .nav-link {
color: $sidebar-light-submenu-color;
}
&.active > .nav-link,
> .nav-link:hover {
color: $sidebar-light-submenu-hover-color;
}
&.active > .nav-link {
font-weight: 600;
}
}
}
@include media-breakpoint-up(sm) {
&.sidebar-mini.sidebar-collapse {
.sidebar-menu > li > .nav-treeview {
border-left: 1px solid $gray;
}
}
}
}