2017-09-04 10 views
3

私はCSSセレクタをテストしています。私はh3を置くとpの表示を変更したいので、私のようなものを書いた:兄弟のホバーに要素を表示するにはどうすればよいですか?

div > p{ 
 
    display: none; 
 
} 
 

 
div > h3:hover p{ 
 
    display: block; 
 
}
<div> 
 
    <h3>Lorem ipsum dolor sit amet</h3> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p> 
 
</div>

をしかし、それは動作しません。これは間違っていますか?私は何が欠けていますか?

+0

あなたはイルミネーターバッジ、ちょうど* *エディタに向けた進捗状況を取得するための最も最近の編集者である必要はありません@kukkuz。また、 "but"は文の始まりではないので、大文字にするべきではありません。 – TylerH

+0

@TylerHは最新の編集者になろうとは思わなかった...私は 'しかし、'大文字にする必要があると思った。 – kukkuz

答えて

8


h3 pをおさらいする+adjacent sibling selector

div > p { 
 
    display: none; 
 
} 
 

 
div > h3:hover + p { 
 
    display: block; 
 
}
<div> 
 
    <h3>HOVER ME</h3> 
 
    <p>Lorem ipsum dolor sit amet...</p> 
 
</div>

を使用して... ph3
h3 + pの子孫であることを意味... pはすぐに次の兄弟であることを意味しますh3


あなたが

div > p { 
 
    display: none; 
 
} 
 
div > h3:hover ~ p { /* notice the general sibling selector */ 
 
    display: block; 
 
} 
 

 
.line{background: red; height: 1px; }
<div> 
 
    <h3>HOVER ME</h3> 
 
    <div class="line"></div> 
 
    <p>Lorem ipsum dolor sit amet...</p> 
 
</div>
ように役立つだろうGeneral sibling selector ~よりh3pの間に、他の要素を持つことが近い将来に予定している場合

3

あなたはを使用することができます隣接する兄弟セレクタ+)はdiv > h3:hover + pです。以下

参照のデモ:

div>p { 
 
    display: none; 
 
} 
 

 
div>h3:hover+p { 
 
    display: block; 
 
}
<div> 
 
    <h3>Lorem ipsum dolor sit amet</h3> 
 
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
 
    dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p> 
 
</div>

関連する問題