2017-01-27 5 views
0

私はウェブサイト用のnavメニューを作成しています... 私はcss:hover関数を使用していますdisplayタグをnoneからinline-blockに変更しています。CSS:ホバータグが機能していませんか? display:none to inline-block

これまで何度も何度もやったことがありますが、何の問題もありません。しかし、今は動作していないようです。

これは最も簡単な形式のコードです。 .parent div要素が上に移動すると、.child div要素が表示されます。

誰もがそれをしていない理由を知っていますか?

a { 
 
    text-decoration: none; 
 
    color: #000; 
 
    font-size: 20px; 
 
} 
 
.parent { 
 
    width: 200px; 
 
    height: 100px; 
 
    background-color: #999; 
 
    display: inline-block; 
 
} 
 
.child { 
 
    display: none; 
 
    width: 200px; 
 
    height: 100px; 
 
    background-color: #333; 
 
} 
 
.parent:hover .child { 
 
    display: inline-block; 
 
}
<a href=""> 
 
    <div class="parent">Parent</div> 
 
</a> 
 
<a href=""> 
 
    <div class="child">Child</div> 
 
</a>

+1

子供は親の内部ではないので、ルールは 'の子ではありません.child' –

+2

を'一致していません。親。あなたのセレクタは、 '.child'が_inside_' .parent'であることを示唆します。 – Turnip

+1

'.parent:hover .child'は' parent'クラスを持つ要素の子孫である 'child'クラスの要素を探します。 CSSには親や祖先のセレクタはないので、HTMLに基づいてCSSだけではできないことはできません。 – j08691

答えて

1

はライブ

<a href=""> 
    <div class="parent">Parent</div> 
</a> 
<a href=""> 
    <div class="child">Child</div> 
</a> 

a { 
    text-decoration: none; 
    color: #000; 
    font-size: 20px; 
} 
.parent { 
    width: 200px; 
    height: 100px; 
    background-color: #999; 
    display: inline-block; 
} 
.child { 
    display: none; 
    width: 200px; 
    height: 100px; 
    background-color: #333; 
} 
a:hover + a .child { 
    display: inline-block; 
} 

)これを試してみてください - https://jsfiddle.net/d26L7juy/

0

親に子供を入れて - ホバーが機能するためのリンクは必要ありません。

a { 
 
    text-decoration: none; 
 
    color: #000; 
 
    font-size: 20px; 
 
} 
 
.parent { 
 
    width: 200px; 
 
    height: 100px; 
 
    background-color: #999; 
 
    display: inline-block; 
 
} 
 
.child { 
 
    display: none; 
 
    width: 200px; 
 
    height: 100px; 
 
    background-color: #333; 
 
} 
 
.parent:hover .child { 
 
    display: inline-block; 
 
}
<div class="parent">Parent 
 
    <a href=""> 
 
    <div class="child">Child</div> 
 
    </a> 
 
</div>

0

をあなたの子div要素が内部ではなかったです親部門

<div class="parent"> 
    <div class="child"> 
    </div> 
</div> 
0
<a href="" class="parent"> 
    <div>Parent</div> 
</a> 
<a href="" class="child"> 
    <div>Child</div> 
</a> 

.parent:hover + .child { 
    display: inline-block; 
} 
関連する問題