Podemos ver um link ao vivo ou um jsFiddle para o seu código?
Nitesh
3
Crie um conjunto de botões de opção e coloque-os em uma div oculta. Na imagem, clique em definir que botão de opção específico marcado significa que, na primeira imagem, clique em definir seu primeiro botão de opção marcado e da mesma forma para os outros dois. Se você não conseguiu, também posso explicar via código.
+1 para o pseudo-seletor, acho que usei JavaScript no passado para verificar os selecionados! Isso vai me ensinar ...
Zik
3
visibilidade meio escondido que não é clique com o poder e posição absoluta leva-lo para fora do fluxo de documentos
99 problemas - Sintaxe não é um
1
Esta é uma excelente resposta. Posso acrescentar que o mesmo também funciona type="checkbox".
Wtower
ok isso é legal .. funciona muito bem, aparentemente funciona no IE também, mas na verdade não é. a imagem se comporta corretamente, mas quando o formulário é enviado, não há seleção de miniaturas. Eu acho que estou usando o novo IE que vem com o Win 8.1. Qualquer ideia?
Junaid Rehman
3
Tarde para a festa, mas tenha cuidado com isso. Visibility:hiddenocultará as entradas do leitor de tela e um grande não não do ponto de vista da acessibilidade.
DPac 22/03
100
Exemplo:
Atenção! Esta solução é apenas CSS.
Eu recomendo que você aproveite o CSS3 para fazer isso, ocultando o botão de opção de entrada padrão com as regras do CSS3:
Isso foi ótimo! I integrou a um formulário ASP.NET e funcionou como um encanto :)
Gus
Este exemplo não funciona no Firefox 49.0.2 no XUbuntu 16.04.1
Sergey Kudriavtsev
@SergeyKudriavtsev talvez o código precise e atualize (esta resposta é de 2013). Felizmente, o código está aberto para qualquer um melhorá-lo. Vou dar uma olhada nisso em breve. Felicidades.
Richard Cotrina
Funciona bem para mim no Firefox 60, o Windows 10.
Trevor
Eu tenho isso trabalhando para um conjunto de 3 carinhas. Agora eu preciso ter várias linhas em um formulário, cada uma com seu próprio conjunto de carinhas felizes. Meu problema é que, quando uma linha é alterada, todas elas mudam. Alguma idéia de que parte precisa ser modificada para fazer isso?
Mantenha os botões de opção ocultos e, ao clicar nas imagens, selecione-os usando JavaScript e estilize sua imagem para que pareça selecionada. Aqui está a marcação -
<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>
Respostas:
<label>
display:none
ou,visibility:hidden
pois isso afetará a acessibilidade)+
Não se esqueça de adicionar uma classe aos seus marcadores e, em CSS, use essa classe .
Estilos e animações personalizados
Aqui está uma versão avançada usando o
<i>
elemento e o:after
pseudo:fonte
type="checkbox"
.Visibility:hidden
ocultará as entradas do leitor de tela e um grande não não do ponto de vista da acessibilidade.Exemplo:
Eu recomendo que você aproveite o CSS3 para fazer isso, ocultando o botão de opção de entrada padrão com as regras do CSS3:
Acabei de fazer um exemplo há alguns dias atrás.
fonte
Você pode usar CSS para isso.
HTML (apenas para demonstração, é personalizável)
CSS
jsFiddle
fonte
Mantenha os botões de opção ocultos e, ao clicar nas imagens, selecione-os usando JavaScript e estilize sua imagem para que pareça selecionada. Aqui está a marcação -
e JS
CSS
fonte
Apenas usando uma classe para ocultar apenas alguns ... com base em https://stackoverflow.com/a/17541916/1815624
fonte
Aqui está uma solução simples de UI do jQuery com base no exemplo aqui:
http://jqueryui.com/button/#radio
Código modificado:
O jQueryUI cuida do fundo da imagem para que você saiba qual botão está marcado.
Cuidado: se você deseja definir um botão como marcado ou desmarcado via Javascript, chame a função de atualização:
fonte
As imagens podem ser colocadas no lugar dos botões de opção usando elementos de etiqueta e extensão.
O botão de opção deve estar oculto,
A imagem pode ser fornecida na tag span,
Para alterar a imagem ao clicar no botão de opção, adicione o estado marcado à tag de entrada,
Se você tiver alguma dúvida, consulte o link a seguir, Como eu tirei a solução do blog abaixo, http://frontendsupport.blogspot.com/2018/06/cool-radio-buttons-with-images.html
fonte
Aqui está um exemplo muito simples
Demo: http://jsfiddle.net/La8wQ/2471/
Este exemplo com base neste truque: https://css-tricks.com/the-checkbox-hack/
Eu testei em: chrome, firefox, safari
fonte