美化input type=range标签滑动样式(带渐变效果)

input原来的样式就不在此赘述了:

下面看一下实际项目中用到的input输入框,同步绑定输入数据,实现输入框双向绑定(实际项目中使用的是vue框架):

html部分:


<div class="inputRatio">
滑动条:<input type="range"  name="ratio" :value="parseInt(ratio)" @input="ratio=$event.target.value"  :style="{background:‘linear-gradient(to right, #059CFA, #ebeff4 ‘ + ratio + ‘%, #ebeff4)‘}"/>//这里通过渐变来改变滑动轨迹的样式,下面有补充渐变的简单示例输入框:<input type="text" maxlength="3" onkeyup="this.value=this.value.replace(/[^0-9-]+/,‘‘);this.value=this.value>100?100:this.value;" v-model="ratio" />%

</div>

样式优化:

/*实际项目中1rem=14px*/
.inputRatio input {
    width: 42.86rem;
    display: inline-block;
    height: 0.86rem;
    line-height: 1.92rem;
}

.inputRatio input:last-child {
    width: 3.57rem;
    height: 2.14rem;
    margin: 0 0.24rem 0 2rem;
    color: #66b4fe;
    font-size: 1.28rem;
    text-align: center;
    background-color: #EEEEEE;
}

.inputRatio input[type="range"] {
    background-color: #EEEEEE;
    border-radius: 0.48rem;
    -webkit-appearance: none;
}
/*这是滑动按钮的样式*/
.inputRatio input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    cursor: default;
    height: 1.92rem;
    width: 1.92rem;
    transform: translateY(0px);
    background: none repeat scroll 0 0 #66b4fe;
    border-radius: 0.96rem;
}

.inputRatio input[type=‘range‘]:focus {
    outline: none;
}

最后的效果:

另:补充linear-gradient()用法示例

css部分:

width: 200px;
height: 100px;
margin-top: 10px;
border: 1px solid #ddd;
}
.test {
background: linear-gradient(#fff, #333);
}
.test2 {
background: linear-gradient(#000, #f00 50%, #090);
}
.test3 {
background: linear-gradient(0deg, #000 20%, #f00 50%, #090 80%);
}
.test4 {
background: linear-gradient(45deg, #000, #f00 50%, #090);
}
.test5 {
background: linear-gradient(to top right, #000, #f00 50%, #090);
}

html部分:

<div class="test"></div>
<div class="test2"></div>
<div class="test3"></div>
<div class="test4"></div>
<div class="test5"></div>

输出效果:

注:本文为原创,如需转载请注明出处http://www.cnblogs.com/hubgit/p/8949847.html ,谢谢!

原文地址:https://www.cnblogs.com/hubgit/p/8949847.html

时间: 2024-07-30 13:24:10

美化input type=range标签滑动样式(带渐变效果)的相关文章

修改input type=file 标签默认样式的简单方法

<html><head><title></title></head><body><form id="uploadForm"  action="" method="post" enctype="multipart/form-data"><input type="file" name="uploadFile&qu

input type=range滑动事件

<input type="range"/>需求:滑动时,计数$.fn.RangeSlider = function(cfg) { this.sliderCfg = { min: cfg && !isNaN(parseFloat(cfg.min)) ? Number(cfg.min) : null, max: cfg && !isNaN(parseFloat(cfg.max)) ? Number(cfg.max) : null, step: c

纯css兼容个浏览器input[type=&#39;radio&#39;]不能自定义样式

各个浏览器对于表单input[type='radio'].input[type='checkbox']的样式总是各有差异 //html <div class="remember-account"> <input type="checkbox"> <span>记住账号</span> </div> //css .remember-account { display: inline-block; font-siz

input type=file 标签禁止让用户手动输入

常规的Web应用程序中涉及到文件上传的部分都不可避免地会使用到<input type="file"/>控件,在上传文件的时候通过点击“浏览”按钮,在弹出的文件选择对话框中选择本地要上传的文件.当然,如果你已经知道要上传的文件的本地路径,也可以复制路径到控件的输入框中(例如要选择的文件的路径特别长).这就存在一个问题,如果你所复制的文件路径根本不存在,那么上传的时候就无法正确获取到文件,而且在javascript中没有判断该控件所选择的文件是否存在的方法,涉及到浏览器的安全性

HTML中INPUT type=&quot;date&quot;标签如何赋值注意问题(转)

现在的html5 input标签支持type="date" 显示有日期的日历控件,一行简单的代码就能显示出一个日历控件,但是有的时候需要给它一个默认的日期值,这个时候可能就要用到val(), attr("value","")等方法,有可能很多人会不成功,其实并不是这个标签不支持这些赋值的方法,而是赋值的时候字符串的格式有问题. 解决办法:一说就明白,一般我们用new Date().getMonth() new Date().getDate()方法

&lt;input type=&#39;file&#39;/&gt;把默认样式改成框框

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head><meta http

input type=file 按钮的样式怎么改变?【转】

修改前样式: 这个貌似是不能直接改的,不过可以模拟: <input type=file name=message_img style="display: none;" onchange="ye.value=value" /> <input name=ye value="None file" /> <input type=button value="Select file" onclick=mess

input Type=range 设定默认值

<input id="goOrBack" max="1940" min="1032" type="range"> max:为最大值 min:最小值 $(document).ready(function() { $('#goOrBack').val(1500);//设定默认值 }) 原文地址:https://www.cnblogs.com/agen-su/p/11806058.html

美化 input type=file控件

大家都知道input的type=file控件默认样式是不能修改的 可以通过一个小技巧处理下 html: <a href="javascript:;" class="go_upload">上传游戏安装包 <input class="upload_input" type="file" value="上传游戏安装包"/> </a> css: .go_upload{ positi