first commit
This commit is contained in:
@@ -0,0 +1,576 @@
|
||||
/* ------------------------------------------------------------------------------
|
||||
*
|
||||
* # NoUI slider
|
||||
*
|
||||
* Styles for NoUI range slider plugin
|
||||
*
|
||||
* Version: 1.2
|
||||
* Latest update: Mar 20, 2017
|
||||
*
|
||||
* ---------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
// Functional styling
|
||||
// ------------------------------
|
||||
|
||||
// Container
|
||||
.noUi-target {
|
||||
border-radius: 100px;
|
||||
position: relative;
|
||||
direction: ltr;
|
||||
background-color: @gray-lighter;
|
||||
.box-shadow(inset 0 1px 1px fade(#000, 10%));
|
||||
|
||||
&,
|
||||
& * {
|
||||
.user-select(none);
|
||||
}
|
||||
}
|
||||
|
||||
// Base
|
||||
.noUi-base {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
// Slider origin
|
||||
.noUi-origin {
|
||||
position: absolute;
|
||||
height: 0;
|
||||
width: 0;
|
||||
border-radius: 100px;
|
||||
}
|
||||
|
||||
// Inherit cursor
|
||||
.noUi-state-drag * {
|
||||
cursor: inherit !important;
|
||||
}
|
||||
|
||||
// Connector
|
||||
.noUi-connect {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
background-color: @color-slate-500;
|
||||
border-radius: 100px;
|
||||
}
|
||||
|
||||
// Disabled state
|
||||
[disabled] {
|
||||
|
||||
// Background
|
||||
.noUi-target {
|
||||
.opacity(0.75);
|
||||
}
|
||||
|
||||
// Handle
|
||||
.noUi-handle {
|
||||
cursor: @cursor-disabled;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Orientations
|
||||
// ------------------------------
|
||||
|
||||
// Horizontal orientation
|
||||
.noUi-horizontal {
|
||||
height: @slider-base-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-base-size * 1.5) + (@slider-base-size / 2);
|
||||
left: -(@slider-base-size * 1.5);
|
||||
}
|
||||
|
||||
&.noUi-extended {
|
||||
padding: 0 @content-padding-base;
|
||||
|
||||
.noUi-connect {
|
||||
right: -(@content-padding-base);
|
||||
}
|
||||
}
|
||||
|
||||
// If has pips
|
||||
&.has-pips {
|
||||
margin-bottom: 35px;
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical orientation
|
||||
.noUi-vertical {
|
||||
display: inline-block;
|
||||
width: @slider-base-size;
|
||||
height: 150px;
|
||||
|
||||
& + & {
|
||||
margin-left: @content-padding-large;
|
||||
}
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-base-size * 1.5);
|
||||
left: -(@slider-base-size * 1.5) + (@slider-base-size / 2);
|
||||
}
|
||||
|
||||
&.noUi-extended {
|
||||
padding: @content-padding-base 0;
|
||||
|
||||
.noUi-connect {
|
||||
bottom: -(@content-padding-base);
|
||||
}
|
||||
}
|
||||
|
||||
// If has pips
|
||||
&.has-pips {
|
||||
margin-right: 35px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Handles and cursors
|
||||
// ------------------------------
|
||||
|
||||
// Draggable
|
||||
.noUi-dragable {
|
||||
cursor: w-resize;
|
||||
|
||||
.noUi-vertical & {
|
||||
cursor: n-resize;
|
||||
}
|
||||
}
|
||||
|
||||
// Handle
|
||||
.noUi-handle {
|
||||
width: (@slider-base-size * 3);
|
||||
height: (@slider-base-size * 3);
|
||||
background-color: #fcfcfc;
|
||||
cursor: pointer;
|
||||
top: -(@slider-base-size);
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
border-radius: 50%;
|
||||
border: 1px solid #bbb;
|
||||
|
||||
.noUi-stacking & {
|
||||
z-index: 10; // this class is applied to the lower origin when its values is > 50%
|
||||
}
|
||||
|
||||
// Inner circle
|
||||
&:after {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
width: @slider-base-size;
|
||||
height: @slider-base-size;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin-top: -(@slider-base-size / 2);
|
||||
margin-left: -(@slider-base-size / 2);
|
||||
background-color: @color-slate-600;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
// Hover state
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: #f8f8f8;
|
||||
|
||||
// Mute circle
|
||||
&:after {
|
||||
.opacity(0.9);
|
||||
}
|
||||
}
|
||||
|
||||
// Active state
|
||||
&:active {
|
||||
background-color: #fefefe;
|
||||
|
||||
// Mute circle
|
||||
&:after {
|
||||
.opacity(0.9);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// White handle
|
||||
.noui-slider-white .noUi-handle:after {
|
||||
content: none;
|
||||
}
|
||||
|
||||
|
||||
// Sizing
|
||||
// ------------------------------
|
||||
|
||||
// Large
|
||||
.noui-slider-lg {
|
||||
|
||||
// Handle
|
||||
.noUi-handle {
|
||||
width: (@slider-large-size * 3);
|
||||
height: (@slider-large-size * 3);
|
||||
top: -(@slider-large-size);
|
||||
|
||||
// Inner circle
|
||||
&:after {
|
||||
width: @slider-large-size;
|
||||
height: @slider-large-size;
|
||||
margin-top: -(@slider-large-size / 2);
|
||||
margin-left: -(@slider-large-size / 2);
|
||||
}
|
||||
}
|
||||
|
||||
// Horizontal
|
||||
&.noUi-horizontal {
|
||||
height: @slider-large-size;
|
||||
|
||||
.noUi-handle {
|
||||
left: -(@slider-large-size * 1.5);
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical
|
||||
&.noUi-vertical {
|
||||
width: @slider-large-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-large-size * 1.5);
|
||||
left: -(@slider-large-size * 1.5) + (@slider-large-size / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Small and mini have the same handle size
|
||||
.noui-slider-sm,
|
||||
.noui-slider-xs {
|
||||
|
||||
// Handle
|
||||
.noUi-handle {
|
||||
width: (@slider-small-size * 3);
|
||||
height: (@slider-small-size * 3);
|
||||
top: -(@slider-small-size);
|
||||
|
||||
// Inner circle
|
||||
&:after {
|
||||
width: @slider-small-size;
|
||||
height: @slider-small-size;
|
||||
margin-top: -(@slider-small-size / 2);
|
||||
margin-left: -(@slider-small-size / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Small
|
||||
.noui-slider-sm {
|
||||
|
||||
// Horizontal
|
||||
&.noUi-horizontal {
|
||||
height: @slider-small-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-small-size * 1.5) + (@slider-small-size / 2);
|
||||
left: -(@slider-small-size * 1.5);
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical
|
||||
&.noUi-vertical {
|
||||
width: @slider-small-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-small-size * 1.5);
|
||||
left: -(@slider-small-size * 1.5) + (@slider-small-size / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Mini
|
||||
.noui-slider-xs {
|
||||
|
||||
// Horizontal
|
||||
&.noUi-horizontal {
|
||||
height: @slider-mini-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-small-size * 1.5) + (@slider-mini-size / 2);
|
||||
left: -(@slider-small-size * 1.5);
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical
|
||||
&.noUi-vertical {
|
||||
width: @slider-mini-size;
|
||||
|
||||
.noUi-handle {
|
||||
top: -(@slider-small-size * 1.5);
|
||||
left: -(@slider-small-size * 1.5) + (@slider-mini-size / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Solid slider handle
|
||||
// ------------------------------
|
||||
|
||||
.noui-slider-solid {
|
||||
|
||||
// Handle
|
||||
.noUi-handle {
|
||||
background-color: @gray-light;
|
||||
border-color: @gray-light;
|
||||
.box-shadow(none);
|
||||
|
||||
// Inner circle
|
||||
&:after {
|
||||
background-color: #fff;
|
||||
.transition(opacity ease-in-out 0.2s);
|
||||
}
|
||||
|
||||
// Change circle opacity on hover
|
||||
&:hover,
|
||||
&:focus {
|
||||
&:after {
|
||||
.opacity(0.75);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Handle colors
|
||||
&.noui-slider-primary .noUi-handle {
|
||||
background-color: @brand-primary;
|
||||
border-color: @brand-primary;
|
||||
}
|
||||
|
||||
&.noui-slider-danger .noUi-handle {
|
||||
background-color: @brand-danger;
|
||||
border-color: @brand-danger;
|
||||
}
|
||||
|
||||
&.noui-slider-success .noUi-handle {
|
||||
background-color: @brand-success;
|
||||
border-color: @brand-success;
|
||||
}
|
||||
|
||||
&.noui-slider-warning .noUi-handle {
|
||||
background-color: @brand-warning;
|
||||
border-color: @brand-warning;
|
||||
}
|
||||
|
||||
&.noui-slider-info .noUi-handle {
|
||||
background-color: @brand-info;
|
||||
border-color: @brand-info;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Contextual colors
|
||||
// ------------------------------
|
||||
|
||||
// Primary
|
||||
.noui-slider-primary {
|
||||
.noUi-connect,
|
||||
&.noUi-connect {
|
||||
background-color: @brand-primary;
|
||||
}
|
||||
}
|
||||
|
||||
// Danger
|
||||
.noui-slider-danger {
|
||||
.noUi-connect,
|
||||
&.noUi-connect {
|
||||
background-color: @brand-danger;
|
||||
}
|
||||
}
|
||||
|
||||
// Success
|
||||
.noui-slider-success {
|
||||
.noUi-connect,
|
||||
&.noUi-connect {
|
||||
background-color: @brand-success;
|
||||
}
|
||||
}
|
||||
|
||||
// Warning
|
||||
.noui-slider-warning {
|
||||
.noUi-connect,
|
||||
&.noUi-connect {
|
||||
background-color: @brand-warning;
|
||||
}
|
||||
}
|
||||
|
||||
// Info
|
||||
.noui-slider-info {
|
||||
.noUi-connect,
|
||||
&.noUi-connect {
|
||||
background-color: @brand-info;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Tooltip
|
||||
// ------------------------------
|
||||
|
||||
.noUi-tooltip {
|
||||
display: none;
|
||||
position: absolute;
|
||||
border-radius: @border-radius-base;
|
||||
background: @gray-dark;
|
||||
color: #fff;
|
||||
top: -43px;
|
||||
padding: @padding-base-vertical @padding-base-horizontal;
|
||||
left: 50%;
|
||||
margin-left: -27px;
|
||||
text-align: center;
|
||||
font-size: @font-size-small;
|
||||
width: 54px;
|
||||
|
||||
&:after {
|
||||
content: '';
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 5px solid transparent;
|
||||
border-top-color: @gray-dark;
|
||||
position: absolute;
|
||||
bottom: -10px;
|
||||
left: 50%;
|
||||
margin-left: -5px;
|
||||
}
|
||||
|
||||
.noUi-handle:hover & {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Pips
|
||||
// ------------------------------
|
||||
|
||||
// Base
|
||||
.noUi-pips {
|
||||
position: absolute;
|
||||
color: @text-muted;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Values base
|
||||
//
|
||||
|
||||
// Default
|
||||
.noUi-value {
|
||||
width: 40px;
|
||||
position: absolute;
|
||||
text-align: center;
|
||||
font-size: @font-size-mini;
|
||||
}
|
||||
|
||||
// Sub
|
||||
.noUi-value-sub {
|
||||
color: #ccc;
|
||||
font-size: @font-size-mini;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Markings base
|
||||
//
|
||||
|
||||
.noUi-marker {
|
||||
position: absolute;
|
||||
background-color: #ccc;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Horizontal layout
|
||||
//
|
||||
|
||||
// Pips
|
||||
.noUi-pips-horizontal {
|
||||
padding-top: 10px;
|
||||
height: 35px;
|
||||
top: 100%;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
// Values
|
||||
.noUi-value-horizontal {
|
||||
margin-left: -20px;
|
||||
padding-top: 15px;
|
||||
|
||||
&.noUi-value-sub {
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.noUi-rtl & {
|
||||
margin-left: 0;
|
||||
margin-right: -20px;
|
||||
}
|
||||
}
|
||||
|
||||
// Markers
|
||||
.noUi-marker-horizontal {
|
||||
|
||||
// Default marker
|
||||
&.noUi-marker {
|
||||
width: 1px;
|
||||
height: 3px;
|
||||
}
|
||||
|
||||
// Sub marker
|
||||
&.noUi-marker-sub {
|
||||
height: 6px;
|
||||
}
|
||||
|
||||
// Large marker
|
||||
&.noUi-marker-large {
|
||||
height: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Vertical layout
|
||||
//
|
||||
|
||||
// Pips
|
||||
.noUi-pips-vertical {
|
||||
padding-left: 10px;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 100%;
|
||||
}
|
||||
|
||||
// Values
|
||||
.noUi-value-vertical {
|
||||
width: 15px;
|
||||
margin-left: 15px;
|
||||
margin-top: -6px;
|
||||
|
||||
.noUi-rtl & {
|
||||
margin-top: 0;
|
||||
margin-bottom: -6px;
|
||||
}
|
||||
}
|
||||
|
||||
// Markers
|
||||
.noUi-marker-vertical {
|
||||
|
||||
// Default marker
|
||||
&.noUi-marker {
|
||||
width: 3px;
|
||||
height: 1px;
|
||||
}
|
||||
|
||||
// Sub marker
|
||||
&.noUi-marker-sub {
|
||||
width: 6px;
|
||||
}
|
||||
|
||||
// Large marker
|
||||
&.noUi-marker-large {
|
||||
width: 10px;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user