45

非表示の div (ホバー時) を表示する CSS の例を次に示します。

<div class="showhim">HOVER ME<div class="showme">hai</div></div>

.showme{ 
display: none;
}
.showhim:hover .showme{
display : block;
}

CSS のみを使用して、 1 つの div を表示し、同時に別の div を非表示にすることはできますか? この目的で JS を使用する方法の例を次に示します: http://jsfiddle.net/joshvito/GaZQ6/

4

3 に答える 3

99

http://jsfiddle.net/MBLZx/

ここにコードがあります

 .showme{ 
   display: none;
 }
 .showhim:hover .showme{
   display : block;
 }
 .showhim:hover .ok{
   display : none;
 }
 <div class="showhim">
     HOVER ME
     <div class="showme">hai</div>
     <div class="ok">ok</div>
</div>

   

于 2013-06-30T18:01:36.117 に答える
16

他のdivが親の兄弟/子、またはそれらの組み合わせである場合

    .showme{ 
        display: none;
    }
    .showhim:hover .showme{
        display : block;
    }
    .showhim:hover .hideme{
        display : none;
    }
    .showhim:hover ~ .hideme2{ 
        display:none;
    }
    <div class="showhim">
        HOVER ME
        <div class="showme">hai</div> 
        <div class="hideme">bye</div>
    </div>
    <div class="hideme2">bye bye</div>

于 2013-06-30T18:03:45.647 に答える
1

このようなことを試しましたか?

.showme{display: none;}
.showhim:hover .showme{display : block;}
.hideme{display:block;}
.showhim:hover .hideme{display:none;}

<div class="showhim">HOVER ME
  <div class="showme">hai</div>
  <div class="hideme">bye</div>
</div>

それができないはずの理由がわかりません。

于 2013-06-30T18:06:08.907 に答える