In my script there are three divs. I want to display div with class="ab" when I hover on first line and display div with class="abc", when hover on second line. Otherwise I want to display div with class="a" by default.
But it never displays the div with class="a".
.abc,.ab {      display: none;  }  #f:hover ~ .ab {      display: block;    }  #f:hover ~ .abc,.a {      display: none;    }  #s:hover ~ .abc {      display: block;    }  #s:hover ~ .ab,.a {      display: none;  }  <a id="f">Show First content!</a>  <br/>  <a id="s">Show Second content!!</a>  <div class="a">Default Content</div>  <div class="ab">First content</div>  <div class="abc">Second content</div>  Here is my JSFiddle of my problem: JSFiddle Link
You can hide an element in CSS using the CSS properties display: none or visibility: hidden . display: none removes the entire element from the page and mat affect the layout of the page. visibility: hidden hides the element while keeping the space the same.
To hide an element, set the style display property to “none”.
Completely hiding elements can be done in 3 ways: via the CSS property display , e.g. display: none; via the CSS property visibility , e.g. visibility: hidden; via the HTML5 attribute hidden , e.g. <span hidden>
To hide an element, use:
display: none; visibility: hidden;   To show an element, use:
display: block; visibility: visible;   The difference is:
Visibility handles the visibility of the tag, the display handles space it occupies on the page.
If you set the visibility and do not change the display, even if the tags are not seen, it still occupies space.
You need
.abc,.ab {     display: none; }  #f:hover ~ .ab {     display: block; }  #s:hover ~ .abc {     display: block; }  #s:hover ~ .a, #f:hover ~ .a{     display: none; }   Updated demo at http://jsfiddle.net/gaby/n5fzB/2/
The problem in your original CSS was that the , in css selectors starts a completely new selector. it is not combined.. so #f:hover ~ .abc,.a means #f:hover ~ .abc and .a. You set that to display:none so it was always set to be hidden for all .a elements.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With