2013-08-16 10 views
16

ho questo slideshow con [input type="radio"]: http://jsfiddle.net/Jtec5/23/
Codici: CSS:Radio ingresso Styling con i CSS

#slideselector { 
    position: absolue; 
    top:0; 
    left:0; 
    border: 2px solid black; 
    padding-top: 1px; 
} 
.slidebutton { 
    height: 21px; 
    margin: 2px; 
} 

sto cercando per lo stile della radio di ingresso con i CSS in modo che appaia così: enter image description here qualche suggerimento?

risposta

25

Ti piace questa

DEMO

CSS

#slideselector { 
    position: absolue; 
    top:0; 
    left:0; 
    border: 2px solid black; 
    padding-top: 1px; 
} 
.slidebutton { 
    height: 21px; 
    margin: 2px; 
} 
#slideshow { 
    margin: 50px auto; 
    position: relative; 
    width: 240px; 
    height: 240px; 
    padding: 10px; 
    box-shadow: 0 0 20px rgba(0,0,0,0.4); 
} 

#slideshow > div { 
    position: absolute; 
    top: 10px; 
    left: 10px; 
    right: 10px; 
    bottom: 10px; 
    overflow:hidden; 
} 

.imgLike { 
    width:100%; 
    height:100%; 
} 
/* Radio */ 

input[type="radio"] { 
    background-color: #ddd; 
    background-image: -webkit-linear-gradient(0deg, transparent 20%, hsla(0,0%,100%,.7), transparent 80%), 
         -webkit-linear-gradient(90deg, transparent 20%, hsla(0,0%,100%,.7), transparent 80%); 
    border-radius: 10px; 
    box-shadow: inset 0 1px 1px hsla(0,0%,100%,.8), 
       0 0 0 1px hsla(0,0%,0%,.6), 
       0 2px 3px hsla(0,0%,0%,.6), 
       0 4px 3px hsla(0,0%,0%,.4), 
       0 6px 6px hsla(0,0%,0%,.2), 
       0 10px 6px hsla(0,0%,0%,.2); 
    cursor: pointer; 
    display: inline-block; 
    height: 15px; 
    margin-right: 15px; 
    position: relative; 
    width: 15px; 
    -webkit-appearance: none; 
} 
input[type="radio"]:after { 
    background-color: #444; 
    border-radius: 25px; 
    box-shadow: inset 0 0 0 1px hsla(0,0%,0%,.4), 
       0 1px 1px hsla(0,0%,100%,.8); 
    content: ''; 
    display: block; 
    height: 7px; 
    left: 4px; 
    position: relative; 
    top: 4px; 
    width: 7px; 
} 
input[type="radio"]:checked:after { 
    background-color: #f66; 
    box-shadow: inset 0 0 0 1px hsla(0,0%,0%,.4), 
       inset 0 2px 2px hsla(0,0%,100%,.4), 
       0 1px 1px hsla(0,0%,100%,.8), 
       0 0 2px 2px hsla(0,70%,70%,.4); 
} 
+0

Non funziona sui miei codici che puoi vedere qui: jsfiddle.net/Jtec5/23 –

+0

@ system-x32z ho aggiornato la mia risposta per favore controlla ora – falguni

+0

La ringrazio molto, la risposta migliore –

2

Ecco un semplice esempio di come è possibile farlo.

Basta sostituire il file di immagine e il gioco è fatto.

codice HTML

<input type="radio" id="r1" name="rr" /> 
<label for="r1"><span></span>Radio Button 1</label> 
<p> 
<input type="radio" id="r2" name="rr" /> 
<label for="r2"><span></span>Radio Button 2</label> 

CSS

input[type="radio"] { 
    display:none; 
} 

input[type="radio"] + label { 
    color:#f2f2f2; 
    font-family:Arial, sans-serif; 
    font-size:14px; 
} 

input[type="radio"] + label span { 
    display:inline-block; 
    width:19px; 
    height:19px; 
    margin:-1px 4px 0 0; 
    vertical-align:middle; 
    background:url(check_radio_sheet.png) -38px top no-repeat; 
    cursor:pointer; 
} 

input[type="radio"]:checked + label span { 
    background:url(check_radio_sheet.png) -57px top no-repeat; 
} 

Working DEMO

+0

Nel codice è necessario aggiungere ' 'dopo aver creato' radio' e usando il mio codice CSS puoi farlo. –

+0

Grazie mille, up-recommended :) –

+0

@DipeshParmar usando 'input [type =" radio "] {display: none; } 'eliminerà l'accesso alla tastiera dai pulsanti di opzione. Fallirà il test di accessibilità. Conoscete un lavoro su questo? –

0

Si dovrebbe usare qualche immagine di sfondo per i vostri pulsanti di opzione e flip con un'altra immagine sul cambiamento

.radio { 
    background: url(customButton.png) no-repeat; 
} 
+0

Non funziona sui miei codici che puoi vedere qui: jsfiddle.net/Jtec5/23 –

0

Vai a questa Fiddle

<input type="radio" id="radio-2-1" name="radio-2-set" class="regular-radio" /><label for="radio-2-1"></label> 
<input type="radio" id="radio-2-2" name="radio-2-set" class="regular-radio" /><label for="radio-2-2"></label> 
<input type="radio" id="radio-2-3" name="radio-2-set" class="regular-radio" /><label for="radio-2-3"></label> 

.regular-radio { 
    display: none; 
} 

.regular-radio + label { 
    -webkit-appearance: none; 
    background-color: #e1e1e1; 
    border: 4px solid #e1e1e1; 
    border-radius: 10px; 
    width: 100%; 
    display: inline-block; 
    position: relative; 
    width: 10px; 
    height: 10px; 
} 

.regular-radio:checked + label { 
    background: grey; 
    border: 4px solid #e1e1e1; 
} 
+0

Non funziona sui miei codici che puoi vedere qui: jsfiddle.net/Jtec5/23 –

0

Trident fornisce lo pseudoelemento ::-ms-check per i controlli casella di controllo e pulsante di opzione. Per esempio:

<input type="checkbox"> 
<input type="radio"> 

::-ms-check { 
    color: red; 
    background: black; 
    padding: 1em; 
} 

Questo mostra come segue in IE10 su Windows 8:

enter image description here