6

我想自定义 html5 input[range] 垂直时的外观。

想要避免像 transform:rotate 这样的 CSS 3 指令,它会使 UI 布局复杂化。

Webkit css 属性在我的上下文中被识别,其他供应商在我的情况下是无用的。

自定义适用于水平默认滑块,但不适用于垂直滑块,您可以在此处查看:

jsfiddle:http: //jsfiddle.net/QU5VD/1/

否则,这是代码:

HTML

<input type="range" class="vHorizon" />

<input type="range" class="vVertical" />

CSS

input[type="range"].vHorizon {
   -webkit-appearance: none;
   background-color: pink;
   width: 200px;
   height:10px;
}
input[type="range"].vVertical {
   -webkit-appearance: slider-vertical;
   background-color: pink;
   width: 10px;
   height:200px;
}
input[type="range"]::-webkit-slider-thumb {
   -webkit-appearance: none;
   background-color: red;
   width: 20px;
   height: 20px;
}
4

1 回答 1

7

******更新的答案****

如果我对你的理解正确,你是想让你垂直看起来像你水平的样子吗?如果是这样:

    input[type=range].vVertical {
    -webkit-appearance: none;
    background-color: green;
    width: 200px;
    height:10px;

      -webkit-transform:rotate(90deg);       
    -moz-transform:rotate(90deg);
    -o-transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    transform:rotate(90deg);
    z-index: 0;
}
input[type=range].vHorizon {
    -webkit-appearance: none;
    background-color: pink;
    height: 10px;
    width:200px;

}
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    background-color: red;
    width: 20px;
    height: 20px;
}

小提琴<--已更新

于 2013-05-28T16:22:08.083 回答