วิธีการ - แถบเลื่อนช่วง
เรียนรู้วิธีสร้างแถบเลื่อนช่วงที่กำหนดเองด้วย CSS และ JavaScript
ค่าเริ่มต้น:
สี่เหลี่ยม:
กลม:
ภาพ:
มูลค่า: 50การสร้างแถบเลื่อนช่วง
ขั้นตอนที่ 1) เพิ่ม HTML:
ตัวอย่าง
<div class="slidecontainer">
<input type="range" min="1" max="100"
value="50" class="slider" id="myRange">
</div>
ขั้นตอนที่ 2) เพิ่ม CSS:
ตัวอย่าง
.slidecontainer {
width: 100%; /* Width of the outside
container */
}
/* The slider itself */
.slider
{
-webkit-appearance: none; /* Override default
CSS styles */
appearance: none;
width:
100%; /* Full-width */
height: 25px; /* Specified height
*/
background: #d3d3d3; /* Grey background */
outline:
none; /* Remove outline */
opacity: 0.7; /* Set
transparency (for mouse-over effects on hover) */
-webkit-transition:
.2s; /* 0.2 seconds transition on hover */
transition: opacity .2s;
}
/* Mouse-over
effects */
.slider:hover
{
opacity: 1; /* Fully shown on mouse-over */
}
/* The slider handle (use -webkit- (Chrome, Opera, Safari,
Edge) and -moz- (Firefox) to override default look) */
.slider::-webkit-slider-thumb {
-webkit-appearance: none; /* Override default look */
appearance: none;
width: 25px; /* Set a specific slider handle width */
height: 25px;
/* Slider handle height */
background: #04AA6D; /* Green
background */
cursor: pointer; /* Cursor on hover */
}
.slider::-moz-range-thumb
{
width: 25px; /* Set a specific slider handle width */
height: 25px;
/* Slider handle height */
background: #04AA6D; /* Green background */
cursor: pointer;
/* Cursor on hover */
}
ขั้นตอนที่ 3) เพิ่ม JavaScript:
สร้างแถบเลื่อนช่วงไดนามิกเพื่อแสดงค่าปัจจุบันด้วย JavaScript:
ตัวอย่าง
var slider = document.getElementById("myRange");
var output =
document.getElementById("demo");
output.innerHTML = slider.value;
// Display the default slider value
// Update the current slider
value (each time you drag the slider handle)
slider.oninput = function() {
output.innerHTML =
this.value;
}
ตัวเลื่อนกลม
ในการสร้างที่จับตัวเลื่อนแบบกลม ให้ใช้border-radius
คุณสมบัติ เคล็ดลับ:
ตั้งค่าความสูงของตัวเลื่อนเป็นค่าที่แตกต่างจากนิ้วโป้งของตัวเลื่อน หากคุณต้องการความสูงไม่เท่ากัน (15px เทียบกับ 25px ในตัวอย่างนี้):
ตัวอย่าง
.slider
{
-webkit-appearance: none;
width:
100%;
height: 15px;
border-radius: 5px;
background: #d3d3d3;
outline:
none;
opacity: 0.7;
-webkit-transition:
.2s;
transition: opacity .2s;
}
.slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 25px;
height: 25px;
border-radius: 50%;
background: #04AA6D;
cursor: pointer;
}
.slider::-moz-range-thumb
{
width: 25px;
height: 25px;
border-radius: 50%;
background: #04AA6D;
cursor: pointer;
}
ไอคอนตัวเลื่อน/รูปภาพ
ในการสร้างไอคอน/รูปภาพของแฮนเดิลตัวเลื่อน ให้ใช้background
คุณสมบัติและแทรก URL รูปภาพ:
ตัวอย่าง
.slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 23px;
height: 24px;
border:
0;
background: url('contrasticon.png');
cursor: pointer;
}
.slider::-moz-range-thumb
{
width: 23px;
height: 25px;
border: 0;
background: url('contrasticon.png');
cursor: pointer;
}