2016-11-05 7 views
5

私はHTML入力範囲を設定して外観にCSSを変更していますが、どこからでもスムーズに変更できるようにする方法があるかどうかは疑問でした?html入力範囲thumb滑らかな動き

input[type=range] { 
 
     -webkit-appearance: none; 
 
     width: 100%; 
 
     height: 20px; 
 
     border-radius: 5px; 
 
     border: 1px solid; 
 
     background: none; 
 
     box-shadow: 0px 0px 8px 0px #555, 0px 0px 25px 0px #555 inset; 
 
     transition: 0.4s all ease-out; 
 
     outline: none; 
 
    } 
 

 
    input[type=range]::-webkit-slider-thumb { 
 
     -webkit-appearance: none; 
 
     width: 30px; 
 
     height: 30px; 
 
     background-color: #CCC; 
 
     border: solid 1px #333; 
 
     border-radius: 4px; 
 
     box-shadow: 0px 0px 8px 0px #555, 0px 0px 25px 0px #555 inset; 
 
     cursor: pointer; 
 
     transition: 0.4s all ease-out; 
 
    } 
 

 
    input[type=range]:hover { 
 
     background: rgba(255, 255, 255, 0.2); 
 
     box-shadow: 0px 0px 13px 0px #444, 0px 0px 20px 0px #444 inset; 
 
    } 
 

 
    input[type=range]:hover::-webkit-slider-thumb { 
 
     border: solid 1px #444; 
 
     box-shadow: 0px 0px 15px 0px #444, 0px 0px 20px 0px #444 inset; 
 
    } 
 

 
    input[type=range]:focus { 
 
     background: rgba(255, 255, 255, 0.4); 
 
     box-shadow: 0px 0px 18px 0px #333, 0px 0px 15px 0px #333 inset; 
 
    } 
 

 
    input[type=range]:focus::-webkit-slider-thumb { 
 
     border: solid 1px #333; 
 
     box-shadow: 0px 0px 22px 0px #333, 0px 0px 15px 0px #333 inset; 
 
    }
<input type="range" id="brightness_slider" value="90" step="1" min="30" max="100">

答えて

1

これらは、滑らかさに影響を与えるものです:バナー

  • 最小/最大範囲
  • ステップ
  • の大きさの幅

    あなたが持っている場合は10

    ので:

    1. 1000px広い範囲の入力
    2. 0から1

    1000範囲

  • ステップサイズは、各ステップは、ちょうど1ピクセルになり、そしてそれは非常にスムーズになります。

    お持ちの場合:25

    1. 1000px広い範囲の入力
    2. 0 -100範囲
    3. ステップサイズそれはあまり流体現れ、許容値の間にスナップします。

      これは本当にあなたのステップサイズと範囲の相互作用の特徴であり、どの値が受け入れられるかについてユーザーに有用なフィードバックを提供します。