Quiero decir, un botón de radio en sí mismo consiste en una forma redonda y un punto en el centro (cuando se selecciona el botón). Lo que quiero cambiar es el color de ambos. ¿Se puede hacer esto usando CSS?
html
css
forms
radio-button
Gato y ratón
fuente
fuente
Una solución rápida sería superponer el estilo de entrada del botón de
:after
opción, sin embargo, probablemente sea una mejor práctica crear su propio kit de herramientas personalizado.fuente
Como mencionó Fred, no hay forma de diseñar de forma nativa los botones de opción con respecto al color, tamaño, etc. Pero puede usar pseudoelementos CSS para configurar un impostor de cualquier botón de opción dado y darle estilo. Tocando lo que dijo JamieD, sobre cómo podemos usar el elemento: after Pseudo, puedes usar ambos: before y: after para lograr un aspecto deseable.
Beneficios de este enfoque:
Explicación de la breve demostración a continuación:
El HTML
El CSS
Una breve demostración para verlo en acción
En conclusión, no se requieren JavaScript, imágenes o baterías. CSS puro.
fuente
Solo si está apuntando a navegadores basados en webkit (Chrome y Safari, tal vez esté desarrollando una aplicación web de Chrome, quién sabe ...), puede usar lo siguiente:
Y luego modifíquelo como si fuera un simple elemento HTML, por ejemplo, aplicando una imagen de fondo.
Úselo
input[type='radio']:active
cuando se selecciona la entrada, para proporcionar gráficos alternativosActualización : a partir de 2018, puede agregar lo siguiente para admitir varios proveedores de navegadores:
fuente
:active
, debe usar:checked
para diferenciar el estilo entre los botones de opción 'seleccionados'.Puede lograr botones de opción personalizados en dos formas de CSS puro
Mediante la eliminación de la apariencia estándar mediante CSS
appearance
y la aplicación de una apariencia personalizada. Desafortunadamente, esto no funciona en IE para escritorio (pero funciona en IE para Windows Phone). Manifestación:A través de ocultar el botón de radio y configurar la apariencia personalizada del botón de radio en
label
el pseudoelector. Por cierto, no es necesario un posicionamiento absoluto aquí (veo un posicionamiento absoluto en la mayoría de las demostraciones). Manifestación:fuente
puede usar el truco de casilla de verificación como se explica en trucos css
http://css-tricks.com/the-checkbox-hack/
ejemplo de trabajo de botón de radio:
http://codepen.io/Angelata/pen/Eypnq
Funciona en IE9 +, Firefox 3.5+, Safari 1.3+, Opera 6+, Chrome cualquier cosa.
fuente
ejemplo simple de botón de opción personalizado de navegador cruzado para usted
https://jsfiddle.net/kuzroman/ae1b34ay/
fuente
Bueno, para crear elementos adicionales podemos usar: after,: before (para que no tengamos que cambiar tanto el HTML). Luego, para los botones de opción y las casillas de verificación, podemos usar: marcado. Hay algunos otros pseudo elementos que también podemos usar (como: hover). Usando una mezcla de estos, podemos crear algunos formularios personalizados muy interesantes. Mira esto
fuente
Prueba este CSS con transición:
Manifestación
HTML:
fuente
Construí otra bifurcación de la muestra de código de @ klewis para demostrar algo de juego con css puro y degradados usando: before /: after pseudoelementos y un botón de entrada de radio oculto.
HTML:
:
CSS:
vista previa: https://www.codeply.com/p/y47T4ylfib
fuente
Esto no es posible con CSS nativo. Tendrás que usar imágenes de fondo y algunos trucos de JavaScript.
fuente
Como dijeron otros, no hay forma de lograr esto en todos los navegadores, por lo que la mejor manera de hacerlo es usar javascript discretamente. Básicamente, tienes que convertir tu botón de radio en enlaces (totalmente personalizables a través de CSS). cada clic en el enlace estará vinculado a la radiobox relacionada, alternando su estado y todos los demás.
fuente
Puede resultar útil vincular el botón de opción a la etiqueta con estilo. Más detalles en esta respuesta .
fuente
Una forma inteligente de hacerlo sería crear un div separado con una altura y un ancho de -por ejemplo- 50px y luego un radio de 50px colocar esto sobre sus botones de radio ...
fuente
Puede incrustar un elemento de tramo en la entrada de radio y luego seleccionar un color de su elección para que se renderice cuando se marca una entrada de radio. Consulte el siguiente ejemplo procedente de w3schools.
Cambiar el color de fondo en este segmento de código a continuación funciona.
Procedente de cómo crear un botón de opción personalizado
fuente
Una solución simple sería utilizar la siguiente propiedad CSS.
fuente