Sto provando a progettare un modulo senza utilizzare JavaScript o JQuery. Include una serie di checkbox. L'idea è di mostrare una certa gif dopo la casella di controllo se è deselezionata. Altrimenti, non visualizzare nulla dopo di esso. Questo è il codice che ho:forma di checkbox in forma css con tag selezionati e dopo
input[type=checkbox]::after
{
content: url(images/unchecked_after.gif);
position:relative;
left:15px;
z-index:100;
}
input[type=checkbox]:checked::after
{
content:"";
}
Funziona in Chrome ma non sembra funzionare in Firefox o IE. Che c'è?
'input' è un elemento con un modello di contenuto vuoto e poiché gli elementi pseudo' :: after' sono resi come nodi figlio dell'elemento a cui sono applicati, c'è un conflitto. Alcuni browser consentono comunque di farlo, altri no. Usa invece il combinatore fratello adiacente per formattare un elemento che hai inserito dopo l'elemento di input. http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#adjacent-sibling-combinators – CBroe
Grazie, questo lo spiega. Ma non riesco ancora a farlo funzionare. Ad esempio, se inserisco un tag "p" dopo la casella di controllo, il seguente selettore CSS non funziona: input [type = checkbox]: checked + p: dopo – user1316401