// Name: Form Range // Description: Styles for the range input type // // Component: `uk-range` // // ======================================================================== // Variables // ======================================================================== $form-range-thumb-height: 15px !default; $form-range-thumb-border-radius: 500px !default; $form-range-thumb-background: $global-color !default; $form-range-track-height: 3px !default; $form-range-track-background: darken($global-muted-background, 5%) !default; $form-range-track-focus-background: darken($global-muted-background, 15%) !default; /* ======================================================================== Component: Form Range ========================================================================== */ /* * 1. Normalize and defaults * 2. Prevent content overflow if a fixed width is used * 3. Take the full width * 4. Remove default style * 5. Remove white background in Chrome * 6. Remove padding in IE11 */ .uk-range { /* 1 */ box-sizing: border-box; margin: 0; vertical-align: middle; /* 2 */ max-width: 100%; /* 3 */ width: 100%; /* 4 */ -webkit-appearance: none; /* 5 */ background: transparent; /* 6 */ padding: 0; @if(mixin-exists(hook-form-range)) {@include hook-form-range();} } /* Focus */ .uk-range:focus { outline: none; } .uk-range::-moz-focus-outer { border: none; } /* IE11 Reset */ .uk-range::-ms-track { height: $form-range-thumb-height; background: transparent; border-color: transparent; color: transparent; } /* * Improves consistency of cursor style for clickable elements */ .uk-range:not(:disabled)::-webkit-slider-thumb { cursor: pointer; } .uk-range:not(:disabled)::-moz-range-thumb { cursor: pointer; } .uk-range:not(:disabled)::-ms-thumb { cursor: pointer; } /* Thumb ========================================================================== */ /* * 1. Reset * 2. Style */ /* Webkit */ .uk-range::-webkit-slider-thumb { /* 1 */ -webkit-appearance: none; margin-top: (floor($form-range-thumb-height / 2) * -1); /* 2 */ height: $form-range-thumb-height; width: $form-range-thumb-height; border-radius: $form-range-thumb-border-radius; background: $form-range-thumb-background; @if(mixin-exists(hook-form-range-thumb)) {@include hook-form-range-thumb();} } /* Firefox */ .uk-range::-moz-range-thumb { /* 1 */ border: none; /* 2 */ height: $form-range-thumb-height; width: $form-range-thumb-height; border-radius: $form-range-thumb-border-radius; background: $form-range-thumb-background; @if(mixin-exists(hook-form-range-thumb)) {@include hook-form-range-thumb();} } /* Edge */ .uk-range::-ms-thumb { /* 1 */ margin-top: 0; } /* IE11 */ .uk-range::-ms-thumb { /* 1 */ border: none; /* 2 */ height: $form-range-thumb-height; width: $form-range-thumb-height; border-radius: $form-range-thumb-border-radius; background: $form-range-thumb-background; @if(mixin-exists(hook-form-range-thumb)) {@include hook-form-range-thumb();} } /* Edge + IE11 */ .uk-range::-ms-tooltip { display: none; } /* Track ========================================================================== */ /* * 1. Safari doesn't have a focus state. Using active instead. */ /* Webkit */ .uk-range::-webkit-slider-runnable-track { height: $form-range-track-height; background: $form-range-track-background; @if(mixin-exists(hook-form-range-track)) {@include hook-form-range-track();} } .uk-range:focus::-webkit-slider-runnable-track, /* 1 */ .uk-range:active::-webkit-slider-runnable-track { background: $form-range-track-focus-background; @if(mixin-exists(hook-form-range-track-focus)) {@include hook-form-range-track-focus();} } /* Firefox */ .uk-range::-moz-range-track { height: $form-range-track-height; background: $form-range-track-background; @if(mixin-exists(hook-form-range-track)) {@include hook-form-range-track();} } .uk-range:focus::-moz-range-track { background: $form-range-track-focus-background; @if(mixin-exists(hook-form-range-track-focus)) {@include hook-form-range-track-focus();} } /* Edge */ .uk-range::-ms-fill-lower, .uk-range::-ms-fill-upper { height: $form-range-track-height; background: $form-range-track-background; @if(mixin-exists(hook-form-range-track)) {@include hook-form-range-track();} } .uk-range:focus::-ms-fill-lower, .uk-range:focus::-ms-fill-upper { background: $form-range-track-focus-background; @if(mixin-exists(hook-form-range-track-focus)) {@include hook-form-range-track-focus();} } // Hooks // ======================================================================== @if(mixin-exists(hook-form-range-misc)) {@include hook-form-range-misc();} // @mixin hook-form-range(){} // @mixin hook-form-range-thumb(){} // @mixin hook-form-range-track(){} // @mixin hook-form-range-track-focus(){} // @mixin hook-form-range-misc(){}