¿Podemos ver un enlace en vivo o un jsFiddle para su código?
Nitesh
3
Cree un conjunto de botones de radio y colóquelos en un div oculto. Al hacer clic en la imagen, configure ese botón de radio en particular marcado significa en la primera imagen, haga clic en configurar su primer botón de radio marcado y de manera similar para los otros dos. Si no lo consiguió, también puedo explicarlo a través del código.
¡+1 para el pseudo selector, creo que he usado JavaScript en el pasado para verificar si se seleccionó! Eso me enseñará ...
zik
3
la visibilidad oculta significa que no se puede hacer clic, y la posición absoluta lo saca del flujo de documentos
99 Problemas - La sintaxis no es una
1
Esta es una excelente respuesta. ¿Puedo agregar que también funciona con type="checkbox"lo mismo?
Wtower
ok esto es bueno ... funciona muy bien, aparentemente también funciona en IE, pero en realidad no lo es. la imagen se comporta correctamente pero cuando se envía el formulario, no hay selección de miniaturas. Supongo que estoy usando el nuevo IE que viene con Win 8.1. ¿Alguna idea?
Junaid Rehman
3
Tarde a la fiesta, pero ten cuidado con esto. Visibility:hiddenocultará las entradas del lector de pantalla y un gran no no desde el punto de vista de accesibilidad.
DPac
100
Ejemplo:
¡Aviso! Esta solución es solo CSS.
Le recomiendo que aproveche CSS3 para hacerlo, ocultando el botón de opción de entrada por defecto con las reglas CSS3:
Esto fue genial! Lo integré a un formulario ASP.NET y funcionó
Gus
Este ejemplo no funciona en Firefox 49.0.2 bajo XUbuntu 16.04.1
Sergey Kudriavtsev
@SergeyKudriavtsev tal vez el código necesita y se actualiza (esta respuesta es de 2013). Afortunadamente, el código está abierto para que cualquiera pueda mejorarlo. Lo examinaré pronto. Salud.
Richard Cotrina
Funciona bien para mí en Firefox 60, Windows 10.
Trevor
Tengo esto trabajando para un conjunto de 3 caras sonrientes. Ahora necesito tener varias filas en una forma, cada una con su propio conjunto de caras sonrientes. Mi problema es que cuando se cambia una fila, todas cambian. ¿Alguna idea de qué parte necesita ser modificada para lograr esto?
Mantenga los botones de opción ocultos y, al hacer clic en las imágenes, selecciónelas con JavaScript y aplique estilo a su imagen para que se vea como seleccionada. Aquí está el marcado:
<div><inputtype="radio"id="shipadd1"value=1name="address"/><labelfor="shipadd1"></label>
value 1
</div><div><inputtype="radio"id="shipadd2"value=2name="address"/><labelfor="shipadd2"></label>
value 2
</div>
Respuestas:
<label>
display:none
ovisibility:hidden
ya que esto afectará la accesibilidad)+
No olvide agregar una clase a sus etiquetas y en CSS use esa clase en su lugar.
Estilos personalizados y animaciones
Aquí hay una versión avanzada que usa el
<i>
elemento y el:after
pseudo:fuente
type="checkbox"
lo mismo?Visibility:hidden
ocultará las entradas del lector de pantalla y un gran no no desde el punto de vista de accesibilidad.Ejemplo:
Le recomiendo que aproveche CSS3 para hacerlo, ocultando el botón de opción de entrada por defecto con las reglas CSS3:
Acabo de hacer un ejemplo hace unos días.
fuente
Puedes usar CSS para eso.
HTML (solo para demostración, es personalizable)
CSS
jsFiddle
fuente
Mantenga los botones de opción ocultos y, al hacer clic en las imágenes, selecciónelas con JavaScript y aplique estilo a su imagen para que se vea como seleccionada. Aquí está el marcado:
y JS
CSS
fuente
Simplemente usando una clase para ocultar solo algunos ... basado en https://stackoverflow.com/a/17541916/1815624
fuente
Aquí hay una solución simple de jQuery UI basada en el ejemplo aquí:
http://jqueryui.com/button/#radio
Código modificado:
jQueryUI se encarga del fondo de la imagen para que sepa qué botón está marcado.
Cuidado: si desea configurar un botón para marcar o desmarcar a través de Javascript, debe llamar a la función de actualización:
fuente
Las imágenes se pueden colocar en lugar de botones de radio mediante el uso de elementos de etiqueta y span.
El botón de radio debe estar oculto,
La imagen se puede dar en la etiqueta span,
Para cambiar la imagen al hacer clic en el botón de opción, agregue el estado marcado a la etiqueta de entrada,
Si tiene alguna consulta, consulte el siguiente enlace. Como he tomado una solución del siguiente blog, http://frontendsupport.blogspot.com/2018/06/cool-radio-buttons-with-images.html
fuente
Aquí hay un ejemplo muy simple
Demostración: http://jsfiddle.net/La8wQ/2471/
Este ejemplo basado en este truco: https://css-tricks.com/the-checkbox-hack/
Lo probé en: Chrome, Firefox, Safari
fuente