ขั้นแรกกำหนดความสูงมากกว่าความกว้าง ตามทฤษฎีแล้วนี่คือทั้งหมดที่คุณควรต้องมี ข้อกำหนดHTML5 แนะนำมาก :
... UA กำหนดแนวของตัวควบคุมจากอัตราส่วนของคุณสมบัติความสูงและความกว้างที่ระบุสไตล์ชีต
โอเปร่ามีมันดำเนินการด้วยวิธีนี้ แต่โอเปร่าตอนนี้ใช้WebKit กะพริบตา ณ วันนี้ไม่มีเบราว์เซอร์ใดที่ใช้แถบเลื่อนแนวตั้งโดยพิจารณาจากความสูงที่มากกว่าความกว้างเท่านั้น
ไม่ว่าจะต้องตั้งค่าความสูงมากกว่าความกว้างเพื่อให้ได้เค้าโครงที่เหมาะสมระหว่างเบราว์เซอร์ การใช้ช่องว่างด้านซ้ายและด้านขวาจะช่วยในการจัดวางและการวางตำแหน่ง
สำหรับ Chrome -webkit-appearance: slider-verticalใช้
สำหรับ IE ใช้writing-mode: bt-lr.
สำหรับ Firefox ให้เพิ่มorient="vertical"แอตทริบิวต์ใน html สงสารที่พวกเขาทำแบบนี้ สไตล์ภาพควรควบคุมผ่าน CSS ไม่ใช่ HTML
input[type=range][orient=vertical]
{
writing-mode: bt-lr;
-webkit-appearance: slider-vertical;
width: 8px;
height: 175px;
padding: 0 5px;
}
<input type="range" orient="vertical" />
ข้อจำกัดความรับผิดชอบ:
โซลูชันนี้ขึ้นอยู่กับการใช้งานเบราว์เซอร์ในปัจจุบันของคุณสมบัติ CSS ที่ยังไม่ได้กำหนดหรือไม่ได้กำหนด หากคุณต้องการใช้ในโค้ดของคุณโปรดเตรียมพร้อมที่จะทำการปรับเปลี่ยนโค้ดเมื่อเบราว์เซอร์เวอร์ชันใหม่ออกและคำแนะนำ w3c จะเสร็จสมบูรณ์
MDN มีคำเตือนที่ชัดเจนเกี่ยวกับการใช้งาน-webkit-appearanceบนเว็บ:
ห้ามใช้พร็อพเพอร์ตี้นี้บนเว็บไซต์: ไม่เพียง แต่จะไม่ได้มาตรฐานเท่านั้น แต่ยังเปลี่ยนพฤติกรรมจากเบราว์เซอร์หนึ่งไปยังอีกเบราว์เซอร์ แม้แต่คำหลักnoneก็มีลักษณะการทำงานที่ไม่เหมือนกันในแต่ละองค์ประกอบของฟอร์มในเบราว์เซอร์ที่แตกต่างกันและบางคำก็ไม่รองรับเลย
คำบรรยายสำหรับการสาธิตตัวเลื่อนแนวตั้งในเอกสาร IEระบุอย่างไม่ถูกต้องว่าการตั้งค่าความสูงที่มากกว่าความกว้างจะแสดงแถบเลื่อนช่วงในแนวตั้ง แต่ไม่ได้ผล ในส่วนของรหัสwriting-modeมันชัดถ้อยชัดคำไม่สูงไม่ได้ตั้งค่าหรือความกว้างและแทนที่จะใช้ writing-modeคุณสมบัติเป็นดำเนินการโดย IEเป็นที่แข็งแกร่งมาก น่าเศร้าที่ค่าที่กำหนดไว้ในร่างการทำงานปัจจุบันของข้อมูลจำเพาะขณะที่เขียนนี้มีข้อ จำกัด กว่ามาก หากเวอร์ชันในอนาคตของ IE ลดลงสนับสนุนbt-lrตามที่เสนอในปัจจุบันvertical-lr(ซึ่งจะเทียบเท่าtb-lr) แถบเลื่อนจะแสดงกลับหัว เป็นไปได้มากว่าเวอร์ชันในอนาคตจะขยายไฟล์writing-modeเพื่อยอมรับค่าใหม่แทนที่จะปล่อยการสนับสนุนสำหรับค่าที่มีอยู่ แต่ควรรู้ว่าคุณกำลังทำอะไรอยู่
-webkit-appearance- ฉันไม่รู้ มันเปลี่ยนแปลงทุกอย่าง