slider range vuejs
input range vuejs slider and css
by femfoyou
HTML
<div id="app">
<label>
<input type="text" v-model="fontSizeSlider" maxlength="2" class="timer-box-input">
</label>
<button type="button" class="boton" @click="fontSizeSlider --">-</button>
<button type="button" class="boton" @click="fontSizeSlider ++">+</button>
<input type="range" min="0" max="100" name="fontSize" v-model="fontSizeSlider" :change="increaseFontSize">
<p style="font-size:{{fontSizeSlider}}px">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorum temporibus, at natus harum magni reiciendis ut dolore voluptatem. Rem tenetur consectetur dolore ut tempore mollitia id. Placeat laudantium culpa cum.</p>
</div>
CSS
/* slider */
input[type=range] {
-webkit-appearance: none;
margin: 20px 0 40px;
width: 100%;
}
input[type=range]:focus {
outline: none;
}
input[type=range]::-webkit-slider-runnable-track {
width: 100%;
height: 1px;
cursor: pointer;
transition: all 0.5s ease;
background: #002C54;
border-radius: 5px;
border: 0px solid #000101;
}
input[type=range]::-webkit-slider-thumb {
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
border: 0px solid #000000;
height: 21px;
width: 20px;
border-radius: 10px;
background: pink;
cursor: pointer;
-webkit-appearance: none;
margin-top: -10px;
}
input[type=range]:focus::-webkit-slider-runnable-track {
background: blue;
}
input[type=range]::-moz-range-track {
width: 100%;
height: 1px;
cursor: pointer;
animate: 0.2s;
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
background: #CD7213;
border-radius: 25px;
border: 0px solid #000101;
}
input[type=range]::-moz-range-thumb {
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
border: 0px solid #000000;
height: 21px;
width: 20px;
border-radius: 10px;
background: cyan;
cursor: pointer;
}
input[type=range]::-ms-track {
width: 100%;
height: 1px;
cursor: pointer;
animate: 0.2s;
background: transparent;
border-color: transparent;
border-width: 39px 0;
color: transparent;
}
input[type=range]::-ms-fill-lower {
background: #CD7213;
border: 0px solid #000101;
border-radius: 50px;
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
}
input[type=range]::-ms-fill-upper {
background: #CD7213;
border: 0px solid #000101;
border-radius: 50px;
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
}
input[type=range]::-ms-thumb {
box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
border: 0px solid #000000;
height: 21px;
width: 20px;
border-radius: 7px;
background: green;
cursor: pointer;
}
input[type=range]:focus::-ms-fill-lower {
background:...
JavaScript
var app = new Vue({
el: '#app',
data: {
letra: 0,
},
})