2017-01-17 14 views
1

私はline25 navigation tutorialに基づいて私のCSSにこれを持っています。非表示:focus if user:hover?

私はこの追加をCSSに追加しました。ユーザーがメニューアイコンの上を移動すると、フォーカススパン(アイコンテキストの説明)が消去され、表示されます。どのように達成することができますか?

nav ul li a:focus span { 
    display: block; 
} 

nav ul li a:hover span { 
    display: block; 
} 

現在:ホバーテキストと:フォーカステキストはお互いに突き合わせています。

ここにはcodepen on the exact thingです。あなたができることの

+1

あなたはjsfiddleまたはStackOverflowのスニペットなどcodepen、上のコード例を提供してもらえますか?また、私はあなたが正確に何を望んでいるか分からない。両方が表示されているため、スパンは重複していますか?あなたはあなたに堅実な背景色と、前のものをオーバーレイするためのスパン上のより高いz-インデックスを付けることができます。あなたの周りのどのような道がわからない。 –

+0

jqueryを使用できますか? – kapil

答えて

0

カップル:

最初のアイデア:置き:を単色の背景色と上に常にオンに置きます。

nav ul li a:hover span, nav ul li a:focus span { 
    display: block; 
    background: white; 
    width: 100%; 

} 
nav ul li a:hover span { 
    z-index: 1; 
} 

それとも、できるだけ早くあなたがリストの上にカーソルを置くと、焦点1を隠すことができます:

nav ul:hover li a:focus span { 
    display: none; 
} 
#navbar-lg ul li a:hover span, nav ul li a:focus span { 
    display: block; 
} 
+0

愚かな質問ですが、2番目の例では、1行目、実際に何を言っていますか? – user2899444

+0

私は2番目のオプションを使用しましたが、前のコメントを読むことを希望します。 – user2899444

+0

@ user2899444 'nav ul:hover li a:focus span'は、pseudo-class:focusが適用されている要素の内側にあるスパンを選択します。しかし、あなたがnav内にあるリストをホバーする場合に限ります。 –

関連する問題