Изменить цвет фона переключателя
Можно ли изменить цвет фона для ввода переключателя в Firefox/Chrome, как в IE? (Без использования изображений)
Запустите это в IE(<9) и Firefox/Chrome:
input[type="radio"] {
background: red;
}
<input type="radio" /> RadioButton
8 ответов
Добавьте этот атрибут в селектор входа радио.
input[type="radio"]{
accent-color:green;
}
В качестве альтернативы можно изменить границу с помощью CSS.
Это входное радио:
<input name="myinput" id="myinput" type="radio" value="1" class="highlighted" />
И это CSS:
.highlighted {
outline:1px solid #F00; /* Firefox, Opera, Chrome, IE8+ */
*filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=0,color=#FF0000) progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=0,color=#FF0000) progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=-1,color=#FF0000) progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=1,color=#FF0000); /* IE6, IE7 */
}
Короткий ответ - нет".
Даже если вам удастся получить что-то, что работает в одном браузере, браузеры, как правило, обрабатывают элементы управления формой совсем по-другому, а это означает, что практически невозможно достичь кросс-браузерной совместимости.
Разочаровываю, я знаю. Проверьте эту статью для получения дополнительной информации: http://www.456bereastreet.com/archive/200409/styling_form_controls/
Кстати, почему вы хотите изменить цвет фона? Как правило, фон переключателя будет просто выбирать цвет фона своего контейнера.
Попробуй это:
.your-class { accent-color: red; mix-blend-mode: multiply; }
Я знаю, что это старый вопрос, но он все равно поднимается довольно высоко, если вы зададите вопрос в Google, так что вот мое решение.
Стиль <label>
элемент, который находится сразу после переключателя.
HTML
<input type=radio name="colour" value="green" id="colour-green" /><label for="colour-green" ></label>
<input type=radio name="colour" value="red" id="colour-red" /><label for="colour-red" ></label>
<input type=radio name="colour" value="blue" id="colour-blue" /><label for="colour-blue" ></label>
CSS
input[type=radio]{
display:none;
}
input[type=radio] + label{
border: 1px solid black;
background-color: red;
border-radius: 50%;
display: block;
...
}
input[type=radio]:checked + label{
background-color: green;
}
Во-первых, вам необходимо отключить стили по умолчанию, предоставляемые браузером. Затем вы можете изменить цвет фона.
input[type="radio"] {
-webkit-appearance: none; /* For WebKit (Chrome, Safari, Opera) browsers */
-moz-appearance: none; /* For Mozilla Firefox */
appearance: none; /* For standard browsers */
background: red; /* Change the background color */
}
Чтобы изменить цвет фона входной кнопки переключателя Только в IE
HTML
<input type="radio" name="custom">
<input type="radio" name="custom">
CSS
input[type=radio] {
width: 20px;
height: 20px;
}
/* This will make the border gray when the button is not checked. */
input[type=radio]:not(:checked)::-ms-check {
border-color: gray;
}
input[type=radio]::-ms-check {
border-color: red; /* This will make the border red when the button is checked. */
color: red; /* This will make the circle red when the button is checked. */
}
Радио ввода - это просто круг, поэтому вы можете изменить стиль тега или