#html #css #slider
#HTML #css #слайдер
Вопрос:
Я создаю вертикальный слайдер, используя -moz и -webkit. В Mozilla я объявляю его вертикальным, используя orient=»vertical», и все стили работают нормально. В Chrome, поскольку я использую -webkit-appearance: нет; для стилизации я не могу использовать -webkit-appearance: slider-vertical, это заставляет меня использовать -webkit-transform: поворот (90 градусов);
Проблема в том, что в Mozilla я могу использовать height для объявления реальной высоты слайдера, вместо этого поворачивая его с помощью chrome, я вынужден использовать width.
#sens[type=range]{
-webkit-appearance: none;
height: 220px; //in chrome is width since it is rotated
}
Как я могу это решить?
Комментарии:
1. почему вы не можете использовать -webkit-внешний вид: слайдер-вертикальный?
2. потому что тогда вы не сможете добавить к нему пользовательские стили. смотрите: bugs.chromium.org/p/chromium/issues/detail?id=341071
Ответ №1:
хорошо, я думаю, вам нужно что-то вроде этого.
Для начала вам нужно прочитать о ::-webkit-slider-runnable-track
и ::webkit-slider-thumb
. link1 и link2 очень полезные свойства.
И теперь вы можете сделать это так:
input[type=range] {
-webkit-appearance: none;
-webkit-transform: rotate(90deg);
margin-top: 50px;
}
input[type=range]::-webkit-slider-runnable-track {
width: 300px;
height: 5px;
background: #ccc;
border: none;
border-radius: 3px;
}
input[type=range]::-webkit-slider-thumb {
-webkit-appearance: none;
border: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: red;
margin-top: -5px;
}
input[type=range]:focus {
outline: none;
}
input[type=range]:focus::-webkit-slider-runnable-track {
background: #ddd;
}
<input type="range" />
Комментарии:
1. Я ошибаюсь или вертикальный слайдер в вашем коде горизонтальный? Это не то, о чем я спрашивал
2. @user217354 Вы видите в коде горизонтальный слайдер? Какой браузер вы используете?
3. В firefox он горизонтальный, в chrome — вертикальный. Ползунок должен быть вертикальным во всех браузерах
4. @user217354 о, ты прав) Я обновил ответ. Просто удалите ` orient=»vertical»`