I'm trying to show/hide hyperlinks according to the currently checked radiobutton. This is working until I wrap the radiobuttons inside <ul><li>
elements.
CSS
.site {
opacity: 0;
height: 0px;
-moz-transition: opacity .5s ease-in-out, height .5s ease-in-out,background .5s ease-in-out;
-webkit-transition: opacity .5s ease-in-out, height .5s ease-in-out,background .5s ease-in-out;
transition: opacity .5s ease-in-out, height .5s ease-in-out,background .5s ease-in-out;
}
input[id=rbSites]:checked ~.site {
opacity: 1;
height: 15px;
}
HTML
<input type="radio" id="rbSites" name="types">
<label for="supportCase">Sites</label>
<input type="radio" id="rbOther" name="types">
<label for="other">Other</label>
<div class="cell site">Link to</div>
<a class="site">SiteX</a>
<a class="site">SiteY</a>
<a class="moblie">AppX</a>
The above stops working as soon as the radiobuttons are wrapped inside <ul><li>
elements, like this:
<ul>
<li>
<input type="radio" id="rbSites" name="types">
<label for="supportCase">Sites</label>
<input type="radio" id="rbOther" name="types">
<label for="other">Other</label>
</li>
<ul>
See jsFiddle without <ul><li>
and with <ul><li>
.