quasar
Version:
Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time
153 lines (125 loc) • 3.3 kB
text/stylus
.q-slider
position relative
width 100%
height 40px
color $primary
color var(--q-color-primary)
outline 0
&__track-container
top 50%
width 100%
height 2px
background rgba(0, 0, 0, .26)
&__track
will-change width, left
background currentColor
top 0
bottom 0
&__track-markers
color black
background-image repeating-linear-gradient(to right, currentColor, currentColor 2px, transparent 0, transparent)
&:after
content ''
position absolute
right 0
top 0
bottom 0
height 2px
width 2px
background currentColor
&__thumb-container
top 11px
width 21px
transform translate3d(-10px, 0, 0) /* rtl:ignore */
will-change left
outline 0
&__thumb
top 0
left 0
transform scale3d(.571, .571, .571)
transition transform .18s ease-out, fill .18s ease-out, stroke .18s ease-out
stroke-width 3.5
stroke currentColor
circle
stroke currentColor
fill currentColor
&__focus-ring
width 21px
height 21px
transition transform 266.67ms ease-out, opacity 266.67ms ease-out, background-color 266.67ms ease-out
border-radius 50%
opacity 0
transition-delay .14s
&__pin
top 0
width 26px
height 26px
margin-top -2px
margin-left -2px
background currentColor
transform rotate(-45deg) scale3d(0, 0, 0) translate3d(0, 0, 0)
transition transform 100ms ease-out
will-change left
border-radius 50% 50% 50% 0%
z-index 1
&__pin-value-marker
transform rotate(45deg)
&-text
position relative
color white
font-size 12px
white-space nowrap
&-bg
position absolute
min-width 27px
width 130%
height 27px
left 50%
top 50%
transform translate3d(-50%, -50%, 0)
background-color currentColor
border-radius $generic-border-radius
&--editable
cursor grab
&--no-value
.q-slider__thumb, .q-slider__track
visibility hidden
&--focus
.q-slider__thumb
transform scale3d(.571, .571, .571)
&--focus, body.desktop &.q-slider--editable:hover
.q-slider__focus-ring
background currentColor
transform scale3d(1.55, 1.55, 1.55)
opacity .25
.q-slider__thumb, .q-slider__track
visibility visible
&--inactive
.q-slider__thumb-container
transition left .28s, right .28s
.q-slider__track
transition width .28s, left .28s, right .28s
&--active
cursor grabbing
.q-slider__thumb
transform scale3d(1, 1, 1)
.q-slider__focus-ring, &.q-slider--label .q-slider__thumb
transform scale3d(0, 0, 0) !important
body.desktop &.q-slider--editable:hover .q-slider__pin
transform rotate(-45deg) scale3d(1, 1, 1) translate3d(19px, -20px, 0)
&--label
&.q-slider--active, .q-slider--focus, &.q-slider--label-always
.q-slider__pin
transform rotate(-45deg) scale3d(1, 1, 1) translate3d(19px, -20px, 0)
&--dark
.q-slider__track-container
background alpha(#fff, .3)
.q-slider__track-markers
color white
&--dense
height 20px
.q-slider__thumb-container
top 0
&--reversed
.q-slider__thumb-container
transform translate3d(10px, 0, 0) /* rtl:ignore */