หลักการสร้าง: สวิทช์ลูกเลื่อน
เรียนรู้ว่าจะใช้ CSS และ JavaScript สร้างสวิทช์ลูกเลื่อนที่กำหนดเอง。
ค่าเริ่มต้น:
สี่เหลี่ยม:
จุด:
ภาพ:
ค่า:สร้างสวิทช์ลูกเลื่อน
ขั้นที่ 1 - เพิ่ม HTML:
<div class="slidecontainer"> <input type="range" min="1" max="100" value="50" class="slider" id="myRange"> </div>
ขั้นที่ 2 - เพิ่ม CSS:
.slidecontainer { width: 100%; /* ความกว้างของตัวจัดเก็บด้านนอก */ {} /* ตัวลูกเลื่อนตัวเอง */ .slider { -webkit-appearance: none; /* ซ้ำรูปแบบ CSS โดยเริ่มต้น */ appearance: none; width: 100%; /* ความกว้างทั้งหมด */ height: 25px; /* ความสูงที่กำหนด */ background: #d3d3d3; /* สีม่วง */ outline: none; /* ลบรอยลาย */ opacity: 0.7; /* ตั้งค่าความโปร่งใส (ใช้ในปรากฏผลเมื่อเห็นด้วยเมาส์) */ -webkit-transition: .2s; /* 0.2 วินาทีของปรากฏผลการเปลี่ยนแปลง */ transition: opacity .2s; {} /* ปรากฏผลเมื่อเห็นด้วยเมาส์ */ .slider:hover { opacity: 1; /* แสดงครบถ้วนเมื่อเห็นด้วยเมาส์ */ {} /* ต่อยื่นแบบต่างๆของตัวจับลูกเลื่อน (ใช้ -webkit- สำหรับ Chrome, Opera, Safari, Edge และ -moz- สำหรับ Firefox เพื่อซ้ำรูปแบบโดยเริ่มต้น) */ .slider::-webkit-slider-thumb { -webkit-appearance: none; /* ซ้ำด้วยรูปแบบโดยเริ่มต้น */ appearance: none; width: 25px; /* กำหนดความกว้างของตัวยื่นลูกของตัวยื่น */ height: 25px; /* ความสูงของตัวยื่นลูกของตัวยื่น */ background: #04AA6D; /* สีเขียว */ cursor: pointer; /* ตะหวนคอมมานด์เมาส์ในขณะหยุดเคลื่อนที่ */ {} .slider::-moz-range-thumb { width: 25px; /* กำหนดความกว้างของตัวยื่นลูกของตัวยื่น */ height: 25px; /* ความสูงของตัวยื่นลูกของตัวยื่น */ background: #04AA6D; /* สีเขียว */ cursor: pointer; /* ตะหวนคอมมานด์เมาส์ในขณะหยุดเคลื่อนที่ */ {}
ขั้นที่สาม - เพิ่ม JavaScript:
สร้างตัวยื่นเลื่อนสเปกตรัมในแบบดนตรี JavaScript ในการแสดงค่าปัจจุบัน:
var slider = document.getElementById("myRange"); var output = document.getElementById("demo"); output.innerHTML = slider.value; // แสดงค่าตัวยื่นเริ่มต้น // ปรับปรุงค่าตัวยื่นในตอนนี้ (ในทุกครั้งที่เลื่อนลูกของตัวยื่น) slider.oninput = function() { output.innerHTML = this.value; {}
ปุ่มลูกยื่นทรงกลม
เพื่อสร้างปุ่มลูกของตัวยื่นที่เป็นทรงกลม ใช้ border-radius
ขอบเขต
คำเตือน:หากคุณต้องการความสูงที่ไม่เท่ากัน (ในตัวอย่างนี้คือ 15 พิกเซล และ 25 พิกเซล) โปรดตั้งความสูงของตัวยื่นเป็นค่าที่ต่างจากความสูงของทูนี่ซึ่งตัวยื่นเลื่อน:
ตัวอย่าง
.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; {}